Method and system for registering a bone of a patient with a computer assisted orthopaedic surgery system

ABSTRACT

A method and system for registering a bone of a patient with a computer assisted orthopaedic surgery system includes retrieving an image of the bone having indicia of the position of a magnetic source coupled thereto, determining first data indicative of the position of the magnetic source in a bone coordinate system, determining second data indicative of a correlation between a coordinate system of the image and the bone coordinate system based on the first data; and displaying an image of the bone based on the second data.

CROSS-REFERENCE TO RELATED U.S. PATENT APPLICATION

Cross-reference is made to U.S. Utility patent application Ser. No.11/323,609 entitled “APPARATUS AND METHOD FOR REGISTERING A BONE OF APATIENT WITH A COMPUTER ASSISTED ORTHOPAEDIC SURGERY SYSTEM,” which wasfiled on Dec. 30, 2005 by Jason T. Sherman et al., to U.S. Utilitypatent application Ser. No. 11/323,610 entitled “MAGNETIC SENSOR ARRAY,”which was filed on Dec. 30, 2005 by Jason T. Sherman et al., to U.S.Utility patent application Ser. No. 11/323,537entitled “METHOD FORDETERMINING A POSITION OF A MAGNETIC SOURCE,” which was filed on Dec.30, 2005 by Jason T. Sherman et al., and to U.S. Utility patentapplication Ser. No. 11/323,963 entitled “SYSTEM AND METHOD FORREGISTERING A BONE OF A PATIENT WITH A COMPUTER ASSISTED ORTHOPAEDICSURGERY SYSTEM,” which was filed on Dec. 30, 2005 by Jason T. Sherman etal., the entirety of each of which is expressly incorporated herein byreference.

TECHNICAL FIELD

The present disclosure relates generally to computer assisted surgerysystems for use in the performance of orthopaedic surgical proceduresand, more particularly, to methods and systems for registering a bone ofa patient to a computer assisted orthopaedic surgery system.

BACKGROUND

There is an increasing adoption of minimally invasive orthopaedicprocedures. Because such surgical procedures generally restrict thesurgeon's ability to see the operative area, surgeons are increasinglyrelying on computer systems, such as computer assisted orthopaedicsurgery (CAOS) systems, to assist in the surgical operation.

Computer assisted orthopaedic surgery (CAOS) systems assist surgeons inthe performance of orthopaedic surgical procedures by, for example,displaying images illustrating surgical steps of the surgical procedurebeing performed and rendered images of the relevant bones of thepatient. Before a computer assisted orthopaedic surgery (CAOS) systemcan display a rendered image of a bone, the bone must first beregistered with the computer assisted orthopaedic surgery (CAOS) system.Registering the bone with the computer assisted orthopaedic surgery(CAOS) system allows the system to determine the relevant contour,location, and orientation of the bone and display the rendered imageaccording to such parameters. In typical computer assisted orthopaedicsurgery (CAOS) systems, a bone is registered by touching a number oflocations of the bone with a probe. In response, the system computes arendered image of the bone, including the contour of the bone, based onthe recorded locations. Because the typical registration process occursduring the orthopaedic surgery procedure, the typical registrationprocess adds additional surgery time and increases the time during whichthe patient is exposed to possible infection. Moreover, currentregistration of the bony anatomy of particular skeletal areas, such asthe hip joint, are challenging due to the difficulty of repeatablylocating fiducial markers and anatomical planes.

SUMMARY

According to one aspect, a method for registering a bone of a patientwith a computer assisted orthopaedic surgery system may includeretrieving an image of the bone. The image of the bone may includeindicia of the position of a magnetic source coupled to the bone. Theimage of the bone defines an image coordinate system. The image may be,for example, a three-dimensional medical image of the bone of thepatient. The method may also include determining the position of areference array coupled to the bone of the patient. The reference arraydefines a bone coordinate system. The reference array may be, forexample, a reflective optical reference array or a radio frequencyreference array.

The method may further include determining first data indicative of theposition of the magnetic source in the bone coordinate system. Theposition of the magnetic source may include the location of the centroidof the magnet in the bone coordinate system and the direction of a polaraxis of the magnet in the bone coordinate system. To determine the firstdata, a magnetic sensor array may be positioned in a magnetic fieldgenerated by the magnetic source. The magnetic sensor array may define amagnetic sensor array coordinate system. The position of the magneticsource may be determined by measuring a magnetic flux density of themagnetic field at a plurality of points in space with a number ofmagnetic sensors of the magnetic sensor array. The position of themagnetic source may be determined in the magnetic sensor arraycoordinate system. For example, the location of the centroid of a magnetcoupled to the bone may be determined in the magnetic sensor arraycoordinate system. Additionally, the direction of a polar axis of themagnet may be determined in the magnetic sensor array coordinate system.Further, the position of the magnetic sensor array in a globalcoordinate system defined by a tracking unit, such as a camera unit orwireless receiver, of the computer assisted orthopaedic surgery systemmay be determined. Additionally, the position of the bone of the patientin the global coordinate system may be determined. Such positions may bedefined by a first and a second transformation matrix, respectively.

The method may further include determining second data indicative of acorrelation between the image coordinate system and the bone coordinatesystem based on the first data. To do so, a transformation matrix may bedetermined. The transformation matrix may be determined by, for example,estimating a transformation matrix for transforming the image coordinatesystem to the bone coordinate system, transforming the position of themagnetic source from the image coordinate system to the bone coordinatesystem using the estimated transformation matrix, generating third dataindicative of the transformed position of the magnetic source,calculating a difference between the first data and the third data, andrepeating these steps until the difference between the first data andthe third data is less than a predetermined minimum threshold value. Tocalculate the difference between the first data and the third data, asum of the squared difference between the first data and the third datamay be calculated. The method may also include displaying an image ofthe bone in a position determined based on the second data. For example,the image of the bone may be displayed in a location and orientationdetermined using the estimated transformation matrix.

According to another aspect, a system for registering a bone of apatient with a computer assisted orthopaedic surgery system may includea first reference array configured to be coupled to the bone of thepatient. The first reference array may define a first coordinate system.The system may also include a display device, a processor electricallycoupled to the display device, and a memory device electrically coupledto the processor. The memory device may have stored therein a pluralityof instructions, which when executed by the processor, cause theprocessor to retrieve an image of the bone including indicia of theposition of a magnetic source coupled to the bone. The image may definea second coordinate system. The plurality of instructions may also causethe processor to determine first data indicative of the position of themagnetic source in the first coordinate system. To do so, the processormay transform the position of the magnetic source from the secondcoordinate system to the first coordinate system. Additionally oralternatively, the processor may determine the location of the centroidof a magnet and a polar axis of the magnetic source in the firstcoordinate system. The system may also include a magnetic sensor arrayhaving a second reference array coupled thereto. The second referencearray defines a third coordinate system. In such embodiments, theprocess may determine the position of the magnetic source in the thirdcoordinate system using the magnetic sensor array.

The plurality of instructions may also cause the processor to determinesecond data indicative of a correlation between the second coordinatesystem and the first coordinate system based on the first data. To doso, the processor may be configured to determine a transformationmatrix. For example, the processor may be configured to estimate atransformation matrix for transforming the image coordinate system tothe bone coordinate system, transform the position of the magneticsource from the image coordinate system to the bone coordinate systemusing the estimated transformation matrix, generate third dataindicative of the transformed position of the magnetic source, calculatea difference between the first data and the third data, and repeat thesesteps until the difference between the first data and the third data isless than a predetermined minimum threshold value. In addition, theplurality of instructions may also cause the processor to display animage of the bone on the display device in a position determined basedon the second data.

According to a further aspect, a method for registering a bone of apatient with a computer assisted orthopaedic surgery system may includedetermining the position of a magnet coupled to the bone in a firstcoordinate system defined by a magnetic sensor array. To do so, thelocation of the centroid of the magnet and a polar axis of the magnetmay be determined in the first coordinate system. The method may alsoinclude transforming the position of the magnet from the firstcoordinate system to a second coordinate system defined by a referencearray coupled to the bone. The position of the magnet may be transformedby determining a first matrix defining the position of the magneticsensor array in a fourth coordinate system defined by the computerassisted orthopaedic surgery system and determining a second matrixdefining the position of the bone of the patient in the fourthcoordinate system.

The method may also include generating first data indicative of theposition of the magnet in the second coordinate system. The first datamay include, for example, the location of the centroid of the magnet andthe direction of a polar axis of the magnet in the second coordinatesystem. Additionally, the method may include retrieving an image of thebone having indicia of the position of the magnet. The image may definea third coordinate system.

The method may further include determining a transformation matrix fortransforming the position of the magnet from the third coordinate systemto the second coordinate system based on the first data. Thetransformation matrix may be determined by, for example, determining anestimated transformation matrix for transforming the third coordinatesystem to the second coordinate system, transforming the position of themagnetic source from the third coordinate system to the secondcoordinate system using the estimated transformation matrix, generatingsecond data indicative of the transformed position of the magneticsource, calculating a difference between the first data and the seconddata, and repeating theses steps until the difference between the firstdata and the second data is less than a predetermined minimum thresholdvalue. The difference between the first data and the second data may bedetermined by calculating a sum of the squared difference between thefirst data and the second data. The method may also include displayingan image of the bone in a location and orientation determined using thetransformation matrix.

BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description particularly refers to the following figures,in which:

FIG. 1 is a perspective view of a computer assisted orthopaedic surgery(CAOS) system;

FIG. 2 is a simplified diagram of the CAOS system of FIG. 1;

FIG. 3 is a perspective view of a bone locator tool;

FIG. 4 is a perspective view of a registration tool for use with thesystem of FIG. 1;

FIG. 5 is a perspective view of an orthopaedic surgical tool for usewith the system of FIG. 1;

FIG. 6 is a simplified flowchart diagram of an algorithm that is used bythe CAOS system of FIG. 1;

FIG. 7 is a simplified diagram of another CAOS system including amagnetic sensor array;

FIG. 8 is a simplified circuit diagram of one embodiment of a sensorcircuit of the magnetic sensor array of FIG. 7;

FIG. 9 is a plan view of one embodiment of a magnetic sensor arrangementof the sensor circuit of FIG. 8;

FIG. 10 is a perspective view of one embodiment of a magnetic source;

FIG. 11 is a simplified flowchart of an algorithm for registering a boneof a patient with a computer assisted orthopaedic surgery system;

FIG. 12 is a simplified flowchart of an algorithm for determining aposition of a magnet in an image;

FIG. 13 is a simplified flowchart for transforming the position of amagnet source from a magnet sensor array coordinate system to a bonecoordinate system;

FIG. 14 is a simplified flowchart of an algorithm for determining aposition of a magnetic source in a magnetic sensor array coordinatesystem;

FIG. 15 is a simplified flowchart for determining a transformationmatrix for transforming an image coordinate system to a bone coordinatesystem;

FIG. 16 is a perspective view of an implantable capsule for use with themagnetic source of FIG. 10;

FIG. 17 is an illustration of a three-dimensional image of a patient'sbony anatomy having a magnetic source coupled thereto;

FIG. 18 is an illustration of the image of FIG. 18 after a segmentationprocess has been applied to the image; and

FIG. 19 is a block diagram of a number of coordinate systems of acomputer assisted orthopaedic surgery system.

DETAILED DESCRIPTION OF THE DRAWINGS

While the concepts of the present disclosure are susceptible to variousmodifications and alternative forms, specific exemplary embodimentsthereof have been shown by way of example in the drawings and willherein be described in detail. It should be understood, however, thatthere is no intent to limit the concepts of the present disclosure tothe particular forms disclosed, but on the contrary, the intention is tocover all modifications, equivalents, and alternatives falling withinthe spirit and scope of the invention as defined by the appended claims.

Referring to FIG. 1, a computer assisted orthopaedic surgery (CAOS)system 10 includes a computer 12 and a camera unit 14. The CAOS system10 may be embodied as any type of computer assisted orthopaedic surgerysystem. Illustratively, the CAOS system 10 is embodied as one or morecomputer assisted orthopaedic surgery systems commercially availablefrom DePuy Orthopaedics, Inc. of Warsaw, Ind. and/or one or morecomputer assisted orthopaedic surgery systems commercially availablefrom BrainLAB of Fledkirchen, Germany.

The camera unit 14 may be embodied as a mobile camera unit 16 or a fixedcamera unit 18. In some embodiments, the system 10 may include bothtypes of camera units 16, 18. The mobile camera unit 16 includes a stand20 coupled with a base 22. The base 22 may include a number of wheels 21to allow the mobile camera unit 16 to be repositioned within a hospitalroom 23. The mobile camera unit 16 includes a camera head 24. The camerahead 24 includes two cameras 26. The camera head 24 may be positionablerelative to the stand 20 such that the field of view of the cameras 26may be adjusted. The fixed camera unit 18 is similar to the mobilecamera unit 16 and includes a base 28, a camera head 30, and an arm 32coupling the camera head 30 with the base 28. In some embodiments, otherperipherals, such as display screens, lights, and the like, may also becoupled with the base 28. The camera head 30 includes two cameras 34.The fixed camera unit 18 may be coupled to a ceiling, as illustrativelyshown in FIG. 1, or a wall of the hospital room. Similar to the camerahead 24 of the camera unit 16, the camera head 30 may be positionablerelative to the arm 32 such that the field of view of the cameras 34 maybe adjusted. The camera units 14, 16, 18 are communicatively coupledwith the computer 12. The computer 12 may be mounted on or otherwisecoupled with a cart 36 having a number of wheels 38 to allow thecomputer 12 to be positioned near the surgeon during the performance ofthe orthopaedic surgical procedure.

Referring now to FIG. 2, the computer 12 illustratively includes aprocessor 40 and a memory device 42. The processor 40 may be embodied asany type of processor including, for example, discrete processingcircuitry (e.g., a collection of logic devices), general purposeintegrated circuit(s), and/or application specific integrated circuit(s)(i.e., ASICs). The memory device 42 may be embodied as any type ofmemory device and may include one or more memory types, such as, randomaccess memory (i.e., RAM) and/or read-only memory (i.e., ROM). Inaddition, the computer 12 may include other devices and circuitrytypically found in a computer for performing the functions describedherein such as, for example, a hard drive, input/output circuitry, andthe like.

The computer 12 is communicatively coupled with a display device 44 viaa communication link 46. Although illustrated in FIG. 2 as separate fromthe computer 12, the display device 44 may form a portion of thecomputer 12 in some embodiments. Additionally, in some embodiments, thedisplay device 44 or an additional display device may be positioned awayfrom the computer 12. For example, the display device 44 may be coupledwith the ceiling or wall of the operating room wherein the orthopaedicsurgical procedure is to be performed. Additionally or alternatively,the display device 44 may be embodied as a virtual display such as aholographic display, a body mounted display such as a heads-up display,or the like. The computer 12 may also be coupled with a number of inputdevices such as a keyboard and/or a mouse for providing data input tothe computer 12. However, in the illustrative embodiment, the displaydevice 44 is a touch-screen display device capable of receiving inputsfrom an orthopaedic surgeon 50. That is, the surgeon 50 can provideinput data to the computer 12, such as making a selection from a numberof on-screen choices, by simply touching the screen of the displaydevice 44.

The computer 12 is also communicatively coupled with the camera unit 16(and/or 18) via a communication link 48. Illustratively, thecommunication link 48 is a wired communication link but, in someembodiments, may be embodied as a wireless communication link. Inembodiments wherein the communication link 48 is a wireless signal path,the camera unit 16 and the computer 12 include wireless transceiverssuch that the computer 12 and camera unit 16 can transmit and receivedata (e.g., image data). Although only the mobile camera unit 16 isshown in FIG. 2, it should be appreciated that the fixed camera unit 18may alternatively be used or may be used in addition to the mobilecamera unit 16.

The CAOS system 10 may also include a number of sensor or referencearrays 54, which may be coupled the relevant bones of a patient 56and/or with orthopaedic surgical tools 58. For example, as illustratedin FIG. 3, a tibial array 60 includes a reference array 62 and boneclamp 64. The illustrative bone clamp 64 is configured to be coupledwith a tibia bone 66 of the patient 56 using a Schantz pin 68, but othertypes of bone clamps may be used. The reference array 62 is coupled withthe bone clamp 64 via an extension arm 70. The reference array 62includes a frame 72 and three reflective elements or sensors 74. Thereflective elements 74 are embodied as spheres in the illustrativeembodiment, but may have other geometric shapes in other embodiments.Additionally, in other embodiments reference arrays having more thanthree reflective elements may be used. The reflective elements 74 arepositioned in a predefined configuration that allows the computer 12 todetermine the identity of the tibial array 60 based on theconfiguration. That is, when the tibial array 60 is positioned in afield of view 52 of the camera head 24, as shown in FIG. 2, the computer12 is configured to determine the identity of the tibial array 60 basedon the images received from the camera head 24. Additionally, based onthe relative position of the reflective elements 74, the computer 12 isconfigured to determine the location and orientation of the tibial array60 and, accordingly, the tibia 66 to which the array 60 is coupled.

Reference arrays may also be coupled to other surgical tools. Forexample, a registration tool 80, as shown in FIG. 4, is used to registerpoints of a bone as discussed in more detail below in regard to FIG. 7.The registration tool 80 includes a reference array 82 having threereflective elements 84 coupled with a handle 86 of the tool 80. Theregistration tool 80 also includes pointer end 88 that is used toregister points of a bone. The reflective elements 84 are alsopositioned in a configuration that allows the computer 12 to determinethe identity of the registration tool 80 and its relative location(i.e., the location of the pointer end 88). Additionally, referencearrays may be used on other surgical tools such as a tibial resectionjig 90, as illustrated in FIG. 5. The jig 90 includes a resection guideportion 92 that is coupled with a tibia bone 94 at a location of thebone 94 that is to be resected. The jig 90 includes a reference array 96that is coupled with the portion 92 via a frame 95. The reference array96 includes three reflective elements 98 that are positioned in aconfiguration that allows the computer 12 to determine the identity ofthe jig 90 and its relative location (e.g., with respect to the tibiabone 94).

The CAOS system 10 may be used by the orthopaedic surgeon 50 to assistin any type of orthopaedic surgical procedure including, for example, atotal knee replacement procedure. To do so, the computer 12 and/or thedisplay device 44 are positioned within the view of the surgeon 50. Asdiscussed above, the computer 12 may be coupled with a movable cart 36to facilitate such positioning. The camera unit 16 (and/or camera unit18) is positioned such that the field of view 52 of the camera head 24covers the portion of a patient 56 upon which the orthopaedic surgicalprocedure is to be performed, as shown in FIG. 2.

During the performance of the orthopaedic surgical procedure, thecomputer 12 of the CAOS system 10 is programmed or otherwise configuredto display images of the individual surgical procedure steps that formthe orthopaedic surgical procedure being performed. The images may begraphically rendered images or graphically enhanced photographic images.For example, the images may include three-dimensional rendered images ofthe relevant anatomical portions of a patient. The surgeon 50 mayinteract with the computer 12 to display the images of the varioussurgical steps in sequential order. In addition, the surgeon 50 mayinteract with the computer 12 to view previously displayed images ofsurgical steps, selectively view images, instruct the computer 12 torender the anatomical result of a proposed surgical step or procedure,or perform other surgical related functions. For example, the surgeon 50may view rendered images of the resulting bone structure of differentbone resection procedures. In this way, the CAOS system 10 provides asurgical “walk-through” for the surgeon 50 to follow while performingthe orthopaedic surgical procedure.

In some embodiments, the surgeon 50 may also interact with the computer12 to control various devices of the system 10. For example, the surgeon50 may interact with the system 10 to control user preferences orsettings of the display device 44. Further, the computer 12 may promptthe surgeon 50 for responses. For example, the computer 12 may promptthe surgeon 50 to inquire if the surgeon 50 has completed the currentsurgical step, if the surgeon 50 would like to view other images, andthe like.

The camera unit 16 and the computer 12 also cooperate to provide thesurgeon 50 with navigational data during the orthopaedic surgicalprocedure. That is, the computer 12 determines and displays the locationof the relevant bones and the surgical tools 58 based on the data (e.g.,images) received from the camera head 24 via the communication link 48.To do so, the computer 12 compares the image data received from each ofthe cameras 26 and determines the location and orientation of the bonesand tools 58 based on the relative location and orientation of thereference arrays 54, 62, 82, 96. The navigational data displayed to thesurgeon 50 is continually updated. In this way, the CAOS system 10provides visual feedback of the locations of relevant bones and surgicaltools for the surgeon 50 to monitor while performing the orthopaedicsurgical procedure.

Referring now to FIG. 6, an algorithm 100 for assisting a surgeon 50 inperforming an orthopaedic surgical procedure is executed by the computer12. The algorithm 100 begins with a process step 102 in which the CAOSsystem 10 is initialized. During process step 102, settings,preferences, and calibrations of the CAOS system 10 are established andperformed. For example, the video settings of the display device 44 maybe selected, the language displayed by the computer 12 may be chosen,and the touch screen of the display device 44 may be calibrated inprocess step 102.

In process step 104, the selections and preferences of the orthopaedicsurgical procedure are chosen by the surgeon 50. Such selections mayinclude the type of orthopaedic surgical procedure that is to beperformed (e.g., a total knee arthroplasty), the type of orthopaedicimplant that will be used (e.g., make, model, size, fixation type,etc.), the sequence of operation (e.g., the tibia or the femur first),and the like. Once the orthopaedic surgical procedure has been set up inprocess step 104, the bones of the patient 56 are registered in processstep 106. To do so, reference arrays, such as the tibial array 60illustrated in FIG. 3, are coupled with the relevant bones of thepatient (i.e., the bones involved in the orthopaedic surgicalprocedure). Additionally, the contours of such bones are registeredusing the registration tool 80. To do so, the pointer end 88 of the tool80 is touched to various areas of the bones to be registered. Inresponse to the registration, the computer 12 displays rendered imagesof the bones wherein the location and orientation of the bones aredetermined based on the reference arrays coupled therewith and thecontours of the bones are determined based on the registered points.Because only a selection of the points of the bone is registered, thecomputer 12 calculates and renders the remaining areas of the bones thatare not registered with the tool 80.

Once the pertinent bones have been registered in process step 106, thecomputer 12, in cooperation with the camera unit 16, 18, displays theimages of the surgical steps of the orthopaedic surgical procedure andassociated navigation data (e.g., location of surgical tools) in processstep 108. To do so, the process step 108 includes a number of sub-steps110 in which each surgical procedure step is displayed to the surgeon 50in sequential order along with the associated navigational data. Theparticular sub-steps 110 that are displayed to the surgeon 50 may dependon the selections made by the surgeon 50 in the process step 104. Forexample, if the surgeon 50 opted to perform a particular proceduretibia-first, the sub-steps 110 are presented to the surgeon 50 in atibia-first order

Referring now to FIG. 7, in another embodiment, a system 200 forpre-operatively registering a bone or bony anatomy (i.e., one or morebones) of a patient includes a computer assisted orthopaedic surgery(CAOS) system 202, a magnetic sensor array 204, and one or more magneticsources 206. The computer assisted orthopaedic surgery (CAOS) system 202includes a controller 208, a camera unit 210, and a display device 212.The controller 208 is communicatively coupled with the camera unit 210via a communication link 214. The communication link 214 may be any typeof communication link capable of transmitting data (i.e., image data)from the camera unit 210 to the controller 208. For example, thecommunication link 214 may be a wired or wireless communication link anduse any suitable communication technology and/or protocol to transmitthe image data.

In the illustrative embodiment, the camera unit 210 is similar to andoperates in a similar manner as the camera unit 16 of the system 10described above in regard to FIG. 1. For example, the camera unit 210includes a camera head 216 having a number of cameras (not shown) andmay be used in cooperation with the controller 208 to determine thelocation and orientation of one or more reference arrays 218 positionedin the field of view of the camera unit 210, as discussed in detailabove in regard to the camera unit 16. The reference arrays 218 may beembodied as optical reference arrays similar to the reference arrays 54,62, 82, 96 illustrated in and described above in regard to FIGS. 2-4and, as such, may include a number of reflective elements. The referencearrays 218 may be coupled with bones of the a patient and/or variousmedical devices, such as probes, saw guides, ligament balancers, and thelike, used during the orthopaedic surgical procedure. Alternatively, inother embodiments, other types of tracking units may be used. Forexample, in some embodiments, the camera unit 210 may be replaced orsupplemented with a wireless receiver (which may be included in thecontroller 208 in some embodiments) and the reference arrays 218 may beembodied as wireless transmitters (e.g., electromagnetic transmitters).Additionally, the medical devices may be embodied as “smart” medicaldevices such as, for example, smart surgical instruments, smart surgicaltrials, smart surgical implants, and the like. In such embodiments, thecontroller 208 is configured to determine the location of the medicaldevices based on wireless data signals received from the smart medicaldevices.

The controller 208 is communicatively coupled with the display device212 via a communication link 220. Although illustrated in FIG. 7 asseparate from the controller 208, the display device 212 may form aportion of the controller 208 in some embodiments. Additionally, in someembodiments, the display device 212 may be positioned away from thecontroller 208. For example, the display device 212 may be coupled witha ceiling or wall of the operating room wherein the orthopaedic surgicalprocedure is to be performed. Additionally or alternatively, the displaydevice 212 may be embodied as a virtual display such as a holographicdisplay, a body mounted display such as a heads-up display, or the like.The controller 208 may also be coupled with a number of input devicessuch as a keyboard and/or a mouse. However, in the illustrativeembodiment, the display device 212 is a touch-screen display devicecapable of receiving inputs from the surgeon 50 using the CAOS system202. That is, the surgeon 50 can provide input data to the displaydevice 212 and controller 208, such as making a selection from a numberof on-screen choices, by simply touching the screen of the displaydevice 212.

The controller 208 may be embodied as any type of controller including,but not limited to, a computer such as a personal computer, aspecialized microcontroller device, a collection of processing circuits,or the like. The controller 208 includes a processor 222 and a memorydevice 224. The processor 222 may be embodied as any type of processorincluding, but not limited to, discrete processing circuitry and/orintegrated circuitry such as a microprocessor, a microcontroller, and/oror an application specific integrated circuit (ASIC). The memory device224 may include any number of memory devices and any type of memory suchas random access memory (RAM) and/or read-only memory (ROM). Althoughnot shown in FIG. 7, the controller 208 may also include other circuitrycommonly found in a computer system.

The controller 208 may also include a database 226. The database 226 maybe embodied as any type of database, electronic library, and/or filestorage location. For example, the database 226 may be embodied as astructured database or as an electronic file folder or directorycontaining a number of separate files and an associated “look-up” table.Further, the database 226 may be stored on any suitable device. Forexample, the database 226 may be stored in a set of memory locations of,for example, the memory device 226 and/or a stored on a separate storagedevice such as a hard drive or the like.

Additionally or alternatively, the controller 208 may be coupled to aremote database 228 via a communication link 230. The remote database228 may be similar to the database 226 and may be embodied as any typeof database, electronic library, and/or a file storage location. Theremote database 228 may be located apart from the controller 208. Forexample, the controller 208 may be located in an orthopaedic surgeryroom while the remote database 228 may form a part of a hospital networkand be located in a separate room or building apart from the orthopaedicsurgery room. As such, the communication link 230 may be embodied as anytype of communication link capable of facilitating data transfer betweenthe controller 208 and the remote database 228. For example, in someembodiments, the communication link 322 may form a portion of a networksuch as a Local Area Network (LAN), a Wide Area Network (WAN), and/or aglobal, publicly-accessible network such as the Internet. In use, thedatabase(s) 226, 228 is accessed by the controller 208 to store and/orretrieve images of a bone(s) of a patient as discussed in more detail inregard to FIGS. 11 and 12.

The controller 208 also includes a receiver or transceiver 232. Thereceiver 232 is used by the processor 222 to communicate with themagnetic sensor array 204 via a communication link 234. Thecommunication link 234 may be embodied as any type of communication linkcapable of transmitting data from the magnetic sensor array 204 to thecontroller 208. For example, the communication link 234 may be a wiredor wireless communication link and use any suitable communicationtechnology and/or protocol to transmit the data. As such, the receiver232 may be embodied as any type of receiver capable of facilitatingcommunication between the controller 208 and the magnetic sensor array204 including, for example, a wired or wireless receiver.

The illustrative magnetic sensor array 204 of FIG. 7 includes a housing236 having a sensing head portion 238 and a handle 240 coupled to thehead portion 238. The handle 240 may be used by a user of the system200, such as an orthopaedic surgeon 50, to move and position themagnetic sensor array 204. The magnetic sensor array 204 also includes asensor circuit 250 located in the head portion 238. As discussed in moredetail below in regard to FIGS. 8 and 9, the sensor circuit 250 isconfigured to sense a magnetic field generated by the magnetic source206 and determine data indicative of a position of the magnetic source206 relative to the magnetic sensor array 204 and transmit such data viathe communication link 234 and receiver 232 to the controller 208. Itshould be understood that, as used herein, the term “position” isintended to refer to any one or more of the six degrees of freedom thatdefine the location and orientation of a body (e.g., the magnetic source206) in space or relative to a predetermined point or other body.

In some embodiments, the magnetic sensor array 204 may also include anreflective reference array 244. The reflective reference array 244includes a support frame 246 and a number of reflective sensor elements248. The reflective reference array 244 is similar to the referencearrays 54, 62, 82, 96 described above in regard to FIGS. 2, 3, 4, and 5,respectively. The reflective sensor elements 248 are positioned in apredefined configuration that allows the controller 208 to determine theidentity and position (i.e., three dimensional location and orientation)of the magnetic sensor array 204 based on the configuration. That is,when the magnetic sensor array 204 is positioned in the field of view ofthe camera unit 210, the controller 208 is configured to determine theidentity and position of the magnetic sensor array 204 relative to thecamera 210 and/or controller 208 based on the images received from thecamera unit 210 via the communication link 214. In other embodiments,the reflective reference array 244 may replaced or complimented with awireless transmitter. In such embodiments, the controller 208 includes awireless receiver and is configured to determine the position andidentity of the magnetic sensor array based on transmitted data receivedfrom the wireless transmitter.

To sense the magnetic field(s) of the magnetic source 206, the sensorcircuit 250 includes a magnetic sensor arrangement 252 as illustrated inFIG. 8. The magnetic sensor arrangement 252 includes one or moremagnetic sensors 350. The sensor circuit 250 also includes a processingcircuit 352 and a transmitter 354. The magnetic sensors 350 areelectrically coupled to the processing circuit 352 via a number ofinterconnects 356. The processing circuit 352 is also electricallycoupled to the transmitter 354 via an interconnect 358. Theinterconnects 356, 358 may be embodied as any type of interconnectscapable of providing electrical connection between the processingcircuit 352, the sensors 350, and the transmitter 354 such as, forexample, wires, cables, PCB traces, or the like.

The number of magnetic sensors 350 that form the magnetic sensorarrangement 252 may depend on such criteria as the type of magneticsensors used, the specific application, and/or the configuration of themagnetic sensor array 204. For example, the magnetic sensors 350 areconfigured to measure a three-dimensional magnetic field of the magneticsource 206. As such, the sensor circuit 250 may include any number andconfiguration of one-dimensional, two-dimensional, and/orthree-dimensional magnetic sensors such that the sensor circuit 252 iscapable of sensing or measuring the magnetic field of the magneticsource 206 in three dimensions. Additionally, the magnetic sensor(s) 350may be embodied as any type of magnetic sensor capable of sensing ormeasuring the magnetic field generated by the magnetic source 206. Forexample, the magnetic sensors 350 may be embodied as superconductingquantum interference (SQUID) magnetic sensors, anisotropicmagnetoresistive (AMR) magnetic sensors, giant magnetoresistive (GMR)magnetic sensors, Hall-effect magnetic sensors, or any other type ofmagnetic sensors capable of sensing or measuring the three-dimensionalmagnetic field of the magnetic source. In one particular embodiment, themagnetic sensor(s) are embodied as X-H3X-xx_E3C-25HX-2.5-0.2T Three AxisMagnetic Field Transducers, which are commercially available from SENISGmbH, of Zurich, Switzerland. Regardless, the magnetic sensors 350 areconfigured to produce a number of data values (e.g., voltage levels)which define one or more of the components (e.g., X—, Y—, andZ-components) of the three-dimensional magnetic flux density of themagnetic field of the magnetic source 206 at the point in space whereeach sensor is located and in the orientation of each sensor's activesensing element. These data values are transmitted to the processingcircuit 352 via the interconnects 356.

In one particular embodiment, the magnetic sensor arrangement 252includes seventeen magnetic sensors 350 ₁-350 ₁₇ configured asillustrated in FIG. 9. The magnetic sensors 350 ₁-350 ₁₇ are secured toa sensor board 370. The sensor board 370 may be formed from anynon-magnetic material capable of supporting the magnetic sensors 350₁-350 ₁₇ in the desired configuration. For example, in the illustrativeembodiment, the sensor board 370 is formed from FR4. The magneticsensors 350 ₁-350 ₁₇ may be mounted on or in the sensor board 370. Assuch, the sensor board 370 forms the sensing face of the sensor circuit250 and may be located inside the head portion 332 of the magneticsensor array 204 (i.e., located behind the housing material) or mountedto the head portion 332 such that the sensor board 370 is exposed.

The illustrative sensor board 370 has a width 372 of about 12centimeters, a length 374 of about 12 centimeters, and a thickness (notshown) of about 1.25 centimeters. However, sensor boards having otherdimensions that allow the mounting of the desired number of magneticsensors 350 may be used. The magnetic sensors 350 are mounted to or inthe sensor board 370 according to a predetermined configuration. Forclarity of description, a grid 375 having an X-axis 376 and a Y-axis 378is illustrated over the sensor board 370 in FIG. 9. In the illustrativeembodiment, each unit of the grid 375 has a measurement of about 5millimeters. Each of the magnetic sensors 350 ₁-350 ₁₇ may be a onedimensional, two dimensional, or three dimensional sensor. As such, eachof the magnetic sensors 350 ₁-350 ₁₇ may include one, two, or threeactive sensing elements, respectively. Each sensing element of themagnetic sensors 350 ₁-350 ₁₇ is capable of measuring at least onecomponent of the magnetic flux density of a magnetic source at theposition (i.e., location and orientation) of the particular magneticsensor. To do so, each magnetic sensor 350 includes a field sensitivepoint, denoted as a “+” in FIG. 9, wherein the magnetic flux density ismeasured. The configuration of the magnetic sensors 350 ₁-350 ₁₇ will bedescribed below in reference to the field sensitive point of eachmagnetic sensor with the understanding that the body of the sensor maybe positioned in numerous orientations wherein each orientationfacilitates the same location of the field sensitive point.

As illustrated in FIG. 9, the first magnetic sensor 350 ₁ is located ata central point (0, 0) on the grid 375. The first magnetic sensor 350 ₁is a three-dimensional magnetic sensor having three channels andgenerates data values (i.e., voltage levels) indicative of the X-, Y-,and Z-components of the measured magnetic flux density at the positionof the sensor 350 ₁. Four additional three-dimensional magnetic sensors350 ₂-350 ₅ are positioned around the first magnetic sensor 350 ₁. Themagnetic sensor 350 ₂ is located at point (−15, 15), the magnetic sensor350 ₃ is located at point (−15, 15), the magnetic sensor 350 ₄ islocated at point (15, 15), and the magnetic sensor 350 ₅ is located atpoint (15, −15), wherein each graduation mark of the grid 375 is definedas 5 units (e.g., 5 millimeters).

The magnetic sensor arrangement 252 also includes a number ofsingle-dimensional magnetic sensors 350 ₆-350 ₁₇. The magnetic sensors350 ₆-350 ₁₃ are positioned on the sensor board 370 such that thesensors 350 ₆-350 ₁₃ measure the Z-component of the measured magneticflux density (i.e., the magnetic flux generated by the magnetic source206). In particular, the magnetic sensor 350 ₆ is located at point (0,−25), the magnetic sensor 350 ₇ is located at point (−25, 0), themagnetic sensor 350 ₈ is located at point (0, 25), the magnetic sensor350 ₉ is located at point (25, 0), the magnetic sensor 350 ₁₀ is locatedat point (−30, −30), the magnetic sensor 350 ₁₁ is located at point(−30, 30), the magnetic sensor 350 ₁₂ is located at point (30, 30), andthe magnetic sensor 350 ₁₃ is located at point (30, −30).

Conversely, the one-dimensional magnetic sensors 350 ₁₄, 350 ₁₆, and themagnetic sensors 350 ₁₅, 350 ₁₇ are positioned on the sensor board 370such that the one-dimensional sensors 350 ₁₄, 350 ₁₆ and 350 ₁₅, 350 ₁₇measure the magnitude of the Y-axis and X-axis components of themagnetic flux density of the measured magnetic field, respectively. Inparticular, the magnetic sensor 350 ₁₄ is located at point (0,−45), themagnetic sensor 350 ₁₅ is located at point (−45, 0), the magnetic sensor350 ₁₆ is located at point (0, 45), and the magnetic sensor 350 ₁₇ islocated at point (45, 0). As illustrated in FIG. 9, the magnetic sensors350 ₁₄-350 ₁₇ are positioned in or embedded in the sensor board 370 suchthat the magnetic sensors 350 ₁₄-350 ₁₇ are positioned orthogonally tothe measurement surface of the sensor board 370. Conversely, themagnetic sensors 350 ₁-350 ₁₃ are positioned on the sensor board 370coplanar with the measurement surface of the sensor board 370 orotherwise substantially parallel therewith.

In some embodiments, the magnetic sensors 350 may have differingmagnetic field sensitivities (i.e., the ability to detect a change inthe measured magnetic flux density) and sensing ranges. For example, insome embodiments, the magnetic sensors 350 located toward a centrallocation of the sensor board 370 may have a lower magnetic fieldsensitivity but a greater sensing range than the magnetic sensors 350located farther from the central location. In the illustrativeembodiment of FIG. 9, the three-dimensional magnetic sensors 350 ₁-350₅, which are located toward the center of the sensor board 370, have alower magnetic field sensitivity and a greater sensing range than theone-dimensional magnetic sensors 350 ₆-350 ₁₇ For example, in oneparticular embodiment, the three-dimensional magnetic sensors 350 ₁-350₅ have a magnetic sensitivity of about 50 μT (micro-Tesla) and a sensingrange of about 20 mT (milli-Tesla) while the one-dimensional magneticsensors 350 ₆-350 ₁₇ have a magnetic sensitivity of about 5 μT and asensing range of about 2 mT. However, in other embodiments, there may beadditional levels or differences of magnetic sensitivity and/or sensingrange based on the particular distance of each magnetic source 350 froma predetermined location on the sensor board 370.

Because of such differences in magnetic field sensitivity and sensingrange of the magnetic field sensors 350, the magnetic sensor arrangement252 may be less susceptible to positioning variances of the magneticsensor array 204 and/or the accuracy of the magnetic flux densitymeasurements may be improved by having magnetic sensors 350 capable ofmeasuring the magnetic flux density of the magnetic source 206 while themagnetic sensor array is positioned close to the magnetic source 206without going into saturation. Additionally, the magnetic sensorarrangement 252 may be less susceptible to positioning variances of themagnetic sensor array 204 and/or the accuracy of the magnetic fluxdensity measurements may be improved by having magnetic sensors 350capable of measuring the magnetic field of the magnetic source 206 whilethe magnetic sensor array 204 is positioned far from the magnetic source206 in spite of the increase in magnetic “noise” (i.e., undesirablemagnetic field effects from sources other than the magnetic source 206).To further improve the measurement accuracy of the magnetic sensor array204, the measurements of the array 204 may be verified as discussed indetail below in regard to process step 502 of algorithm 500 shown inFIG. 11.

It should be appreciated that the magnetic sensor arrangement 252 isonly one illustrative embodiment and that, in other embodiments, thesensor arrangement 252 of the sensor circuit 250 may include any numberof magnetic sensors 350 positioned in any configuration that allows themagnetic sensors 350 to measure the three-dimensional X-, Y-, andZ-components of the measured magnetic flux density. For example, in someembodiments, the magnetic sensor arrangement 252 may include a singlethree-dimensional magnetic sensor. Alternatively, in other embodiments,the magnetic sensor arrangement 252 may include additional magneticsensors 350 arranged in various configurations. It should be appreciatedthat by increasing the number of magnetic sensors, an amount ofredundancy is developed. That is, magnitudes of the individualcomponents of the measured magnetic flux densities are determined usingmeasurements from a number of magnetic sensors 350 positioned indifferent locations. For example, referring to the illustrative magneticsensor arrangement 252 illustrated in FIG. 9, the magnitudes of theZ-component of the measured magnetic flux densities are determined usingthe measurements from magnetic sensors 350 ₁-350 ₁₃. As such, it shouldbe appreciated that the accuracy of the characterization of thethree-dimensional magnetic field generated by the magnetic source 206may be increased by including additional magnetic sensors in themagnetic sensor arrangement 252.

Further, although the magnetic sensors 350 are embodied as separatemagnetic sensors apart from the processing circuit 352 in theillustrative embodiment of FIGS. 7-9, in some embodiments, the magneticsensors 350 and the processing circuit 352, or portions thereof, may beembodied as a single electronic device. For example, the magneticsensors 350 and portions of the processing circuit 352 may be embodiedas one or more complimentary metal oxide semiconductor (CMOS) device(s).By embedding the magnetic sensors 350 and processing circuit 352 in asemiconductor device, the required space of the sensor circuit 250 isreduced. Additionally, such a semiconductor device may be lesssusceptible to outside influences such as temperature variation of theindividual magnetic sensors 350.

Referring back to FIG. 8, the processing circuit 352 may be embodied asany collection of electrical devices and circuits configured todetermine the position of the magnetic source 206. For example, theprocessing circuit 352 may include any number of processors,microcontrollers, digital signal processors, and/or other electronicdevices and circuits. In addition, the processing circuit 352 mayinclude one or more memory devices for storing software/firmware code,data values, and algorithms.

In some embodiments, the processing circuit 352 is configured todetermine position data indicative of the position of the magneticsource 206 relative to the magnetic sensor array 204 based on themeasurements of magnetic sensors 350. To do so, the processing circuit352 may execute an algorithm for determining the position of themagnetic source 206 relative to the magnetic sensor array 204 asdiscussed in detail below in regard to algorithms 600 and 650 andillustrated in FIG. 13 and 14. The position data may be embodied ascoefficient values or other data usable by the controller 208, alongwith pre-operative images of the relevant bones and magnetic sources206, to determine the position (i.e., location and orientation) of themagnetic source 206. The processing circuit 352 controls the transmitter354 via interconnect 358 to transmit the position data to the controller208 via the communication link 234. Alternatively, in other embodiments,the processing circuit 332 is configured only to transmit themeasurements of the magnetic sensors 350 to the controller 208 via thetransmitter 354. In response, the controller 208 executes the algorithmfor determining the position of the magnetic source 206 using themeasurements received from the magnetic sensor array 204. In suchembodiments, the overall footprint (i.e., size) of the sensor circuit250 may be reduced because some of the circuitry of the processingcircuit 352 may not be required since the processing circuit 352 is notconfigured to determine the position data.

In some embodiments, the sensor circuit 250 may also include anindicator 360. The indicator 360 may be embodied as any type ofindicator including a visual indicator, an audible indicator, and/or atactile indicator. The indicator 360 is electrically coupled to theprocessing circuit 352 via an interconnect 362, which may be similar tointerconnects 356, 358. In such embodiments, the processing circuit 352is configured to activate the indicator 360 when the magnetic sensorarray 204 (i.e., the magnetic sensors 350) is positioned in a magneticfield of a magnetic source 206. For example, the processing circuit 352may be configured to monitor the magnetic flux densities sensed by themagnetic sensor(s) 350 in one or more of the X-, Y-, and/or Z-directionsshown in FIG. 9 and activate the indicator 360 when the magnetic fluxdensity in one or more of the X-, Y-, and/or Z-directions reaches orsurpasses a predetermined threshold value. In this way, the magneticsensor array 204 is capable of notifying the surgeon 50 or other user ofthe array 204 when the array 204 has been properly positioned such thatthe magnetic sensor array 204 can accurately sense or measure themagnetic flux density of the magnetic source 206.

Further, in some embodiments the sensor circuit 250 may include aregister button 364. The register button 364 may be located on anoutside surface of the magnetic sensor array 204 such that the button364 is selectable by a user (e.g., an orthopaedic surgeon 50) of thearray 204. The button 364 may be embodied as any type of button such asa push button, toggle switch, software implemented touch screen button,or the like. The register button 364 is electrically coupled to theprocessing circuit 352 via an interconnect 366, which may be similar tointerconnects 356, 358. The register button 364 may be selected by auser, such as an orthopaedic surgeon, of the magnetic sensor array 204to transmit the position data and/or measurement values of the magneticsensors 350 to the controller 208. That is, as discussed in more detailbelow in regard to algorithm 600, once the magnetic sensor array 204 isproperly positioned to measure the magnetic field of the magnetic source206, the surgeon 50 may select the register button 364 to cause themagnetic sensor array 204 to transmit the data. In some embodiments, theregister button 364 is only operable while the magnetic 204 is properlypositioned. For example, the register button 364 may be selected totransmit the position data/measured values only while the processingcircuit 352 has determined that the measured magnetic flux density(e.g., in the Z-axis direction) is above a predetermined threshold valueor within a predetermined range of values. As discussed above in regardto the indicator 360, the surgeon 50 is notified when the magneticsensor array is properly positioned by the activation of the indicator360.

Although the illustrative magnetic sensor array 204 is illustrated as ahand-held device including the sensor circuit 250 located therein, inother embodiments, the magnetic sensor array 204 may be embodied as asingle magnetic sensor, a number of magnetic sensors, or a collection ofmagnetic sensors and other circuitry. Additionally, in otherembodiments, the magnetic sensor array 204 may include one or moreremote magnetic sensors located apart from the sensor circuit 250. Bydisplacing the remote magnetic sensor(s) from the sensor circuit 250,unwanted magnetic interferences caused by environmental magnetic fieldssuch as magnetic effects caused from the Earth's magnetic field, straymagnetic fields in the operating room, and the like, may be adjusted outof or otherwise compensated for in the sensor circuit 250 as discussedin more detail below in regard to process step 652 of algorithm 650described below in regard to and illustrated in FIG. 14.

Referring now to FIG. 10, the magnetic source 206 may be embodied as oneor more magnets. In the illustrative embodiment, the magnetic source 206is embodied as two or more cylindrical, dipole magnets 400. Themagnet(s) 400 generate a magnetic field having a number a magnetic fluxlines 402. It should be appreciated that only a subset cross-section ofthe generated flux lines 402 is illustrated in FIG. 10 and that the fluxlines (and magnetic field) circumferentially surround the magnet(s) 400.Each of the magnets 400 includes a centroid 404 (illustrated in FIG. 10as a dot) and an axis 406. Additionally, each magnet 400 includes anorth pole 401 and a south pole 403, through which the axis 406 isdefined. When coupled to a bone(s) of a patient, the position (i.e.,location and orientation) of the magnets 400 is defined by six degreesof freedom. That is, the position of the magnet(s) 400 can be defined bythree Cartesian coordinate values and three rotational values (i.e., oneabout each Cartesian axis). For example, as illustrated in FIG. 10 bycoordinate system 408, the position of the magnet(s) 400 can be definedin three-dimensional space by an X-coordinate value, a Y-coordinatevalue, a Z-coordinate value, a (theta) θ-rotational value about the Xaxis, a (phi) φ-rotational value about the Y axis, and a (psi)Ψ-rotational value about the Z axis.

The position (i.e., location and orientation) of the magnets 400 mayalternatively be defined with six degrees of freedom in the coordinatesystem 408 as a point coordinate (P) and direction vector (D) based onthe centroid 404 and a vector 412 originating at the centroid 404 andextending along the axis 406. The vector 412 may be defined to point inany one of the polar directions and is illustrated in FIG. 10 aspointing toward the north pole of the magnet 400. The point coordinate(P) correlates to the location of the centroid 404 of the magnet 400 inthe coordinate system 408 and may be defined by an X-coordinate value, aY-coordinate value, and a Z-coordinate value. The direction vector (D)correlates to the vector 12 of the magnet 400 in the coordinate system408. The direction vector (D) may also be defined as a unit vector (Do)as follows:

$D_{o} = \frac{{ai} + {bj} + {ck}}{\sqrt{a^{2} + b^{2} + c^{2}}}$

wherein i is a unit vector pointing in the X direction, j is a unitvector pointing in the Y direction, k is a unit vector pointing in the Zdirection, and a, b, and c are numerical values. Additionally oralternatively, the position of the magnets 400 may be defined with sixdegrees of freedom as the point coordinate (P) discussed above and twoangular values defining the direction of the direction vector (D). Forexample, as illustrated in FIG. 10, the direction vector (D) may bedefined as a (theta) θ-rotational value about the X axis and a (phi)φ-rotational value about the Y axis. In such embodiments, the valuestheta and phi may be determined based as follows:

θ=arctangent (b/a)

φ=arccosine (c)

The magnet 400 may be formed from any magnetic material capable ofgenerating a magnetic field of sufficient magnetic flux density orstrength to be sensed or measured by the sensor circuit 250 through therelevant tissue of a patient. For example, the magnet 400 may be formedfrom ferromagnetic, ferrimagnetic, antiferromagnetic, antiferrimagnetic,paramagnetic, or superparamagnetic material. In one particularembodiment, the magnet 400 is formed from a neodymium iron boron (NdFeB)grade 50 alloy material. The illustrative magnet 400 is a cylindricalmagnet having a length 412 of about five millimeters and a diameter 414of about two millimeters. However, in other embodiments, magnets 400having other configurations, such as rectangular and spherical magnets,and sizes may be used.

To improve the accuracy of the measurements of the magnetic sensors 350,in some embodiments, the plurality of magnets 400 that embody themagnetic source 206 are formed or manufactured such that the magneticqualities of each magnet 400 are similar. To do so, in one embodiment,the magnetic field generated by each magnet 400 is measured anddetermined. Only those magnets 400 having similar magnetic fields areused. Additionally, in some embodiments, the magnetic moment of eachmagnet 400 may be determined. Only those magnets 400 with magneticmoments on-axis or near on-axis with the magnet's 400 longitudinal axisare used. That is, if the magnetic moment of the magnet 400 isdetermined to extend from the magnet 400 from a location substantiallyoff the longitudinal axis of the magnet 400, the magnet 400 may bediscarded. In this way, the magnetic fields generated by each of themagnets 400 are similar and, as such, measurements of the magneticfields and calculated values based thereon may have increased accuracy.

Referring now to FIGS. 11-20, an algorithm 500 for registering a bone ofa patient with a computer assisted orthopaedic surgery (CAOS) system(e.g., the CAOS system 202) begins with an optional process step 502 inwhich the accuracy of the magnetic sensor array 204 is verified (e.g.,the accuracy of the measurements of the magnetic sensors 350 may beverified). Such verification process may be executed before eachregistration procedure or as part of a maintenance routine such as ayearly, monthly, or weekly maintenance procedure. For example, in someembodiments, a gage repeatability and reproducibility process may beused to ensure that the magnetic sensor array 204 functions properlyacross a number of different users and uses. In one particularlyembodiment, a test apparatus may be coupled to the sensing head portion236 of the magnetic sensor array 204 to verify the accuracy of themagnetic sensor array 204.

An exemplary test apparatus includes a test magnetic source positionedat a predetermined distance from the sensor circuit 250 housed in thesensing head portion 236 of the magnetic sensor array 204. Because themagnetic flux density (or magnetic strength) of the test magnetic sourceis known and the distance of the test magnetic source from the sensinghead portion 236 is known (i.e., from the sensor circuit 250 located inthe sensing head 236), an expected magnetic flux density measurementvalue for each magnetic sensor 350 can be determined. The actualmeasured magnetic field values of each magnetic field sensor 350 (i.e.,the output voltage levels of the magnetic sensors 350 indicative of oneor more axes of the three-dimensional magnetic flux density componentsat each sensor's position) may then be compared to the expected magneticflux density values. Any error above a predetermined threshold may beindicative of malfunction of the magnetic sensor array 204. To furtherimprove the verification procedure, the test apparatus may beselectively positioned in a number of locations from the sensing head236. Expected and measured magnetic flux density values may then bedetermined for each such location.

Next, in process step 504, the magnetic source 206 is coupled to therelevant bony anatomy of the patient. The magnetic source 206 may beimplanted in or otherwise fixed to the bone or bones of the patient uponwhich the orthopaedic surgical procedure is to be performed. Forexample, if a total knee arthroplasty (TKA) surgical procedure is to beperformed, one or more magnetic sources 206 may be coupled to therelevant tibia bone, the relevant femur bone, or both the relevant tibiaand femur bones of the patient. As discussed above, each magnetic source206 may be embodied as one or more magnets 400.

The magnet(s) 400 that embody the magnetic source 206 may be coupled tothe bone of the patient using any suitable fixation means that securesthe magnet(s) 400 to the bone such that the magnet(s) 400 do not move orotherwise propagate about before and during the performance of theorthopaedic surgical procedure. In one embodiment, the magnet(s) 400 arecoupled to the bone of the patient by implanting the magnet(s) 400 inthe bone. To do so, as illustrated in FIG. 16, an implantable capsule800 may be used. The capsule 800 includes a body portion 802 in which amagnet 400 is located and a threaded screw portion 804 at a distal endof the body portion 802. The capsule 800 may be formed from anynonmagnetic material, such as a ceramic or plastic material, such thatthe magnetic field generated by the magnet 400 is not degraded by thecapsule 800. Additionally, the capsule 800 is formed from a radioopaquematerial (e.g., a radioopaque ceramic) such that the capsule 800 isdistinguishable in a medical image of the bone (e.g., in a ComputedTomography (CT) image, X-Ray image, or the like). The capsule 800 (andthe magnet 400) may be implanted in a bone of the patient by firstboring a suitable hole into the bone and subsequently inserting thecapsule 800 by, for example, screwing the capsule 800, into the boredhole. In other embodiments, implantable capsules having otherconfigurations may be used. For example, in some embodiments, theimplantable capsule may include threads that cover the entire body ofthe capsule.

As discussed above in regard to FIG. 10, the position of the magnet 400once coupled to the bone of the patient may be defined by a location ofthe centroid 404 of the magnet 400 and the direction of one of the polaraxis of the magnet 400. In embodiments wherein the implantable capsule800 is used, the capsule 800 may include indicia from which thedirection of the polar axis 406 of the magnet 400 may be determined in amedical image when the magnet 400 is positioned in the body portion 802.For example, in some embodiments, the direction of the polar axis 406may be determined based on the direction of the screw portion 804, whichis visibly distinguishable in a medical image when the capsule 800 isformed from a radioopaque material. Alternatively or additionally, thecapsule 800 may include a direction indicator 806 on a top surface 808of the capsule 800, such as protrusion or the like, which providesadditional indication of the direction of the polar axis 406 of themagnet 400. In such embodiments, the magnet 400 may be positioned in thecapsule 800 is a predetermined orientation. For example, the magnet 400may be positioned in the capsule 800 such that the north polar axisextends through the top surface 808 of the capsule 800. In this way, thedirection of each polar axis of a number of magnets 400, which mayembody the magnetic source 206 in some embodiments, may be determined.

In embodiments wherein the magnetic source 206 is embodied as a numberof magnets 400, the magnets 400 may be coupled or implanted into thebone of the patient at a predetermined, known position (location and/orrotation) relative to each other. For example, the two magnets 400 maybe implanted into the bone of the patient such that the magnets 400 aresubstantially orthogonal to each other or otherwise implanted with aknown angle defined between each other. Regardless, the magnets 400 areimplanted a distance apart from each other such that the magnetic fieldsgenerated by the magnets 400 do not interfere with each other. That is,the magnets 400 are separated by a sufficient distance such that themagnetic field of one magnet 400 does not constructively ordestructively interfere with the magnetic field of another magnet 400over the intended measurement region. In one particular embodiment, themagnets 400 are implanted a distance of two times or more the maximumdesired measuring distance (e.g., the maximum Z-axis distance from themagnets 400 that the magnetic sensor array 204 can be positioned whilestill accurately measuring the magnetic field of the magnets 400).

In some embodiments, a jig or guide may be used to facilitate theimplanting of two or more magnets 400 at a predetermined distance fromeach other (and predetermined angles of rotation relative to each otherif so desired). In other embodiments, the two or more magnets 400 thatform the magnetic source 206 may be secured to each other via a fixedbrace or support member. The support member secures the magnets 400 at apredetermined three-dimensional position (i.e., location andorientation) with respect to each other. In such embodiments, a jig maynot be required to implant the magnets 400. However, because the supportmember may form a magnetic source 206 that is structurally larger, alarger incision may be required to implant the magnetic source 206 intothe bone of the patient.

In embodiments wherein the magnetic source 206 is formed from two ormore magnets 400, the magnetic sensor array 204 may be used bypositioning the array 204 (i.e., the sensor circuit 250) in the magneticfield of the one of the magnets 400, sensing the magnetic field of thethat magnet 400 to determine position data indicative of its positionrelative to the magnetic sensor array 204, and then positioning themagnetic sensor array 204 in the magnetic field of the next magnet 400relative to the magnetic sensor array 204, sensing the magnetic field ofthe next magnet 400, and so on.

Referring now back to FIG. 11, after the magnetic source 206 has beencoupled to the bone of the patient in process step 504, an image of thebone or bones having the magnetic source 206 coupled thereto isgenerated in process step 506. It should be appreciated that themagnetic source 206 is coupled to the bone of the patient prior to theperformance of the orthopaedic surgical procedure. As such, the magneticsource 206 may be coupled to the bone of the patient well in advance ofthe date or time of the orthopaedic surgical procedure or immediatelypreceding the procedure. Accordingly, the image of the bone or bonyanatomy of the patient may be generated any time after the coupling stepof process step 504. For example, the bone(s) of the patient may beimaged immediately following process step 504, at some time after thecompletion of process step 504, or near or immediately preceding theperformance of the orthopaedic surgical procedure.

The relevant bone(s) of the patient (i.e., the bone(s) which have themagnetic source 206 coupled thereto) may be imaged using any suitablebony anatomy imaging process. The image so generated may be a number oftwo-dimensional images or three-dimensional images of the relevantbone(s) of the patient and includes indicia of the position of themagnetic source 206 coupled to the bone(s). That is, the image isgenerated such that the position (i.e., location and orientation) of themagnets 400 implanted or otherwise fixed to the relevant bone(s) isvisible and/or determinable from the image. To do so, any imagemethodology capable of or usable to generate a three-dimensional imageof the relevant bone(s) and magnetic source 206 may be used. Forexample, computed tomography (CT), fluoroscopy, and/or X-ray may be usedto image the bone.

Subsequently, in process step 508, the position (i.e., the location ofthe centroid and direction of the polar axis) of each magnet 400 in theimage is determined. To do so, the computer assisted orthopaedic surgerysystem 202 may execute an algorithm 550 for determining the position ofeach magnet 400 in the image as illustrated in FIG. 12. The algorithm550 begins with a process step 552 in which the image(s) of the bonyanatomy is retrieved. The controller 208 may retrieve the image(s) fromthe memory device 224, the database 226, the remote database 228, orother storage location. Alternatively, the image(s) may be supplied tothe computer assisted orthopaedic surgery system 202 on a portable mediadevice such as a compact disk, portable memory device, or the like. Anynumber of images may be retrieved in process step 552. For example, inembodiments wherein the images are embodied as two-dimensional images(e.g., two-dimensional X-ray images), the computer assisted orthopaedicsurgery system 202 may retrieve two or more such images.

Additionally, in embodiments wherein the images are embodied as a numberof two-dimensional images, a three-dimensional image is generated fromthe two-dimensional images in process step 554. For example, in someembodiments, two non-coplanar X-ray images may be used to form athree-dimensional image of the relevant bone(s) and magnetic source 206.For example, the two or more non-coplanar X-ray images may be generatedin process step 506 of algorithm 500 and subsequently compared with eachother to determine the three-dimensional image. To do so, anytwo-dimensional-to-three-dimensional morphing algorithm may be used. Forexample, any one or combination of the morphing algorithms disclosed inU.S. Pat. Nos. 4,791,934, 5,389,101, 6,701,174, U.S. Patent ApplicationPublication No. US2005/0027492, U.S. Patent Application Publication No.US2005/0015003A1, U.S. Patent Application Publication No.US2004/0215071, PCT Patent No. WO99/59106, European Patent No.EP1348394A1, and/or European Patent No. EP1498851A1 may be used.

Once a three-dimensional image of the relevant bony anatomy and magneticsource 206 has been generated, the algorithm 550 advances to processstep 556. In process step 556, the three-dimensional image is segmentedto distinguish the indicia of the magnetic source 206 (i.e., magnets400) from the remaining background of the image. Any type ofsegmentation algorithm may be used. For example, a threshold-basedalgorithm, an edge-based algorithm, a region-based algorithm, or aconnectivity-preserving relaxation-based algorithm may be used. In oneparticular embodiment, a threshold-based algorithm is used to filter thethree-dimensional image such that indicia having an intensity valuelower than a predetermined minimum threshold is removed from the image.For example, the segmentation algorithm may analyze each voxel formingthe three-dimensional image and “turn off” (i.e., set to a value of 0)each voxel having an intensity value less than the predetermined minimumthreshold value. Because the magnet 400 (and capsule 800 in someembodiments) is radioopaque, the voxels forming the image of the magnet400 (and capsule 800) will remain in the image such that the magnet 400and/or capsule 800 is discernable in the image.

For example, as illustrated in FIG. 17, a three-dimensional image 850 ofa knee joint of a patient may include indicia of the femur 852 and tibia854 of the patient. A magnetic source 206 is implanted in the femur 852and tibia 854. The illustrative magnetic source 206 is embodied as fourmagnets 400 positioned in capsules 800 and individually coupled to thefemur 852 or tibia 854. An image coordinate system 856 may be defined inthe image 850 such that positions of indicia in the image (e.g., themagnets 400) may be referenced to the coordinate system 856. In theillustrative embodiment of FIG. 17, the coordinate system 856 is definedas having an origin at the bottom right corner of the image 850.However, in other embodiments, the origin of the coordinate system 856may be defined at any other corner of the image 850 or at any locationwithin the image 850.

As illustrated in FIG. 18, a segmented image 860 is generated bysegmenting the three-dimensional image 850. After the segmentationprocess, the implantable capsules and/or magnets 400 are more easilydiscernable from the other indicia of the image 850, such as the femur852 and tibia 854. In particular, depending on the segmentation process,the segmented image 860 may include only indicia of the magnets 400and/or capsules 800 as illustrated in FIG. 18.

Once the image has been segmented, the position of the each magnet 400is determined in process step 558. To do so, the location of thecentroid 404 and the vector 412 along the axis 406 of each magnet 400 isdetermined from the segmented image 860. The centroid 404 of the magnets400 may be determined by locating the center of the volume of voxelsthat form the image of each magnet 400 (or capsule 800) in the segmentedimage 860. The vector 412 may be determined by locating the longitudinalaxis of the volume of voxels forming each magnet 400 and/or based on thedirection of other indicia such as the indicator 806 of the implantablecapsule 800. The location, P_(I), of the centroid 404 of each magnet 400may be represented by a three-dimensional coordinate value (X, Y, Z)with respect to the image coordinate system 856. Similarly, thedirection vector, D_(I), defined along the axis 406 of each magnet 400may be defined as a unit vector with respect to the image coordinatesystem 856 as follows:

$D_{I} = \frac{{ai} + {bj} + {ck}}{\sqrt{a^{2} + b^{2} + c^{2}}}$

wherein i is a unit vector pointing in the X direction, j is a unitvector pointing in the Y direction, k is a unit vector pointing in the Zdirection, and a, b, and c are numerical values.

In some embodiments, the controller 208 stores the coordinates location,P_(I), of the centroid 404 and the direction vector, D_(I), of the axis406 of each magnet 400 once such values are determined. The controller208 may store the location and direction data in the memory device 224,the database 226, and/or the remote database 228.

Referring back to FIG. 11, once the position of each magnet 400 in thethree-dimensional image 850, 860 has been determined in process step508, errors due to the magnetic sensors 350 themselves may be determinedand compensated for in process step 510. Due to manufacturingtolerances, aging, damage, use, and other factors, the magnetic sensors350 may generate an offset output signal (i.e., offset voltage) in theabsence of a magnetic field. If the offset output signal of the magneticsensors 350 is known, the accuracy of the magnetic sensor 308 can beimproved by subtracting the offset of the magnetic sensors 350 from themeasurements of the magnetic sensors 350. To do so, the magnetic sensorarray 204 may be positioned in a magnetically shielded case or housing.The magnetically shielded case is configured to block a significantamount of outside magnetic fields such that the environment containedinside the case is substantially devoid of any magnetic fields. In oneembodiment, the magnetically shielded case is formed from a mu-metalmaterial such as particular nickel alloys or from other materials havingsuitable shielding properties.

To compensate for the offset voltage of the magnetic sensors 350, themagnetic sensor array 204 may be positioned in the magnetically shieldedcase and operated remotely, or autonomously via an error compensationsoftware program, to measure the output signals of the magnetic sensors350. Because there is no significant magnetic field inside themagnetically shielded case, the output signals of the magnetic sensors350 are indicative of any offset voltage errors. Once the offset voltageerrors are so determined, the accuracy of the magnetic sensor array 204may be improved. That is, the sensor circuit 250 may be configured tosubtract such offset voltages from the measurements of the magneticsensors 350 to thereby account for the offset errors. It should beappreciated that the process step 510 may be performed any time prior tothe performance of the registration of the bone or bony anatomy (seeprocess step 516 below). In one particular embodiment, the process step510 is executed just prior to the registration of the relevant bone(s)such that the reduced time lapse between the process step 510 and theregistration process reduces the likelihood that the errors drift orchange.

Subsequently, the magnetic sensor array 204 is registered with thecontroller 208 in process step 512 and a reference array is coupled tothe relevant bony anatomy in process step 514. As shown in FIG. 11, theprocess steps 512, 514 may be executed contemporaneously with each otheror in any order. Unlike process steps 504-508, the process step 512 istypically performed immediately prior to the performance of theorthopaedic surgical procedure. To register the magnetic sensor array204, the array 204 is positioned in the field of view 52 of the cameraunit 210 such that the reflective reference array 244 is viewable by thecamera unit 210. Appropriate commands are given to the controller 208such that the controller 208 identifies the magnetic sensor array 204via the reflective reference array 244 coupled thereto. The controller208 is then capable of determining the position of the magnetic sensorarray 204 using the reflective reference array 244.

In process step 514, a reference array is coupled to the relevant boneor bones of the patient. The reference array is similar to referencearray 54 illustrated in and described above in regard to FIG. 2. Similarto reference array 54, the reference array may be a reflective referencearray similar to reflective reference arrays 244 or may be anelectromagnetic or radio frequency (RF) sensor array and embodied as,for example, a wireless transmitter. Regardless, the reference array iscoupled to the relevant bony anatomy of the patient such that thereference array is within the field of view of the camera unit 210. Thecontroller 208 utilizes the reference array to determine movement of thebony anatomy once the bony anatomy has been registered with the computerassisted orthopaedic surgery (CAOS) system 202 as discussed below inregard to process step 516.

After the magnetic sensor array 204 has been registered with thecontroller 208 in process step 512 and the reference array has beencoupled to the relevant bony anatomy in process step 514, the bone orbony anatomy of the patient having the magnetic source 206 coupledthereto is registered with the controller 208 in process step 516. To doso, as illustrated in FIG. 13, an algorithm 600 for transforming theposition of a magnetic source from a magnetic sensor array coordinatesystem to a bone coordinate system may be executed by the controller208. As will be described below, the algorithm 820 is usable withmagnetic sources 206 embodied as any number of magnets 400.

The algorithm 600 begins with process step 602 in which the magneticsensor array 204 is positioned. To do so, the magnetic sensor array 204is positioned in the magnetic field of each magnet 400 in apredetermined order based on the three-dimensional image 850, 860. Forexample, the positioning order of the magnetic sensor array 204 may bedistal-to-proximal magnets 400 beginning with the femur of the patient.The magnetic sensor array 204 may be positioned using any order of themagnets 400 such that the position data generated from the magneticsensor array 204 is associated with the correct magnet 400.

The magnetic sensor array 204 is positioned in the magnetic field ofeach magnet 400 in process step 602 such that the sensor circuit 250 ofthe magnetic sensor array 204 is positioned over a magnetic moment ofthe respective magnet 400. In one particular embodiment, the magneticsensor array 204 may be positioned such that the central magnetic sensor350 ₁ (see FIG. 9) is substantially on-axis with the magnetic moment ofthe magnet 400. To do so, the sensor circuit 250 may be configured tomonitor the output of the magnetic sensor 350 ₁. For example, in theillustrative embodiment, the sensor circuit 250 may be configured tomonitor the X-component and the Y-component outputs of the centrallylocated, three-dimensional magnetic sensor 350 ₁. The magnetic sensorarray 204 is determined to be positioned over the magnetic moment of themagnet 400 (i.e., the field sensitive point of the magnetic sensor 350 ₁is on-axis or near on-axis with the magnetic moment of the magnet 400)when the measured X-component and Y-component measurements are at aminimum value (or below a threshold value).

In other embodiments, the sensor circuit 250 may be configured tomonitor the X-component and the Y-component outputs of additionalmagnetic sensors 350. For example, the sensor circuit 250 may beconfigured to monitor the output of all magnetic sensors 350 configuredto measure the X-component of the three-dimensional magnetic fluxdensity of the magnet 400 at a given position (e.g., magnetic sensors350 ₁-350 ₅, 350 ₁₅, and 350 ₁₇) and the output of all the magneticsensors 350 configured to measure the Y-component of a three-dimensionalmagnetic flux density of the magnet 400 at a given position (i.e.,magnetic sensors 350 ₁-350 ₅, 350 ₁₄, and 350 ₁₆). For example, thesensor circuit 250 may be configured to sum the output of such sensorsand determine the location at which such sums are at a minimum value.

To assist the surgeon 50 in positioning the magnetic sensor array 204,the sensor circuit 250 may be configured to provide feedback to thesurgeon 50 via the indicator 360. For example, when the sensor circuit250 determines that the sum of the X-component measurements and the sumof the Y-component measurements have reached minimum values, the sensorcircuit 250 may be configured to activate the indicator 360. In thisway, the surgeon 50 knows when the magnetic sensor array is properlypositioned in the X-Y plane relative to the magnet 400.

In other embodiments, the sensor circuit 250 may be configured to adaptto non-alignment of the magnetic sensor array 204. For example, based onthe X-component and Y-component measurement outputs of the magneticsensors 350 ₁-350 ₅ and 350 ₁₄-350 ₁₇, the sensor circuit 250 may beconfigured to determine which magnetic sensor 350 is on-axis or closestto on-axis with the magnetic moment of the magnet 400. For example, ifthe X-component and Y-component measurement outputs of the magneticsensor 350 ₅ (see FIG. 9) is near zero or at a minimum, the sensorcircuit 250 may be determine that the field sensitive point of themagnetic sensor 350 ₅ is on-axis or near on-axis with the magneticmoment of the magnet 400. Rather than forcing the surgeon 50 or user toreposition the magnetic sensor 308, the sensor circuit 250 may beconfigured to adjust measurement values of the magnetic sensors 350 forthe X-Y offset of the magnetic moment of the magnet 400 relative to thesensor board 370.

In process step 602, the magnetic sensor array 204 is also positionedalong the Z-axis relative to the magnet 400. That is, the magneticsensor array 204 is positioned a distance away from the magnet 400 alongthe Z-axis as defined by the magnetic moment of the magnet 400. Themagnetic sensor array 204 is positioned at least a minimum distance awayfrom the magnet 400 such that the magnetic sensors 350 do not becomesaturated. Additionally, the magnetic sensor array 204 is positionedwithin a maximum distance from the magnet 400 such that the measuredmagnetic flux density is above the noise floor of the magnetic sensors350 (i.e., the magnetic flux density if sufficient to be discerned bythe magnetic sensors 350 from background magnetic “noise”). The sensorcircuit 250 may be configured to monitor the output of the magneticsensors 350 to determine whether the magnetic sensors 350 are saturatedor if the output of the magnetic sensors 350 is below the noise floor ofthe sensors 350. The sensor circuit 250 may be configured to alert thesurgeon 50 or user of the magnetic sensor array 204 if the magneticsensor array 204 is properly positioned with respect to the Z-axisrelative to the magnet 400. The maximum distance at which the magneticsensor array 204 will be used also determines the minimum distancebetween the individual magnets 400 that form the magnetic source 206(i.e., the magnets 400 are separated by a distance of two times or morethe maximum measurement distance of the magnetic sensor array 204 in oneembodiment).

Once the magnetic sensor array 204 has been properly positioned inprocess step 602, the position of each magnet 400 relative to themagnetic sensor array 204 is determined in process step 604.Additionally, the position of the magnetic sensor array 204 relative tothe computer assisted orthopaedic surgery system 202 is determined inprocess step 606 and the position of the relevant bone or bony anatomyis determined in process step 608. As illustrated in FIG. 13, theprocess steps 604, 606, 608 are executed contemporaneously with eachother.

The positions of the magnets 400, the magnetic sensor array 204, and thebone or bony anatomy are determined with respect to respectivecoordinate systems. For example, as illustrated in FIG. 19, the magneticsensor array 204 (e.g., the reference array 244 coupled to the magneticsensor array 204) defines a magnetic sensor array coordinate system 900.The position of the magnets 400 are determined in process step 604 inreference to the magnetic sensor array coordinate system 900. Similarly,the camera head 216 of the camera unit 210 of the computer assistedorthopaedic surgery system 202 defines a global or computer assistedorthopaedic surgery system coordinate system 902. The position of themagnetic sensor array 204 is determined in process step 606 in referenceto the global coordinate system 902. Similarly, the position of therelevant bone or bony anatomy (based on the position of the referencearray(s) 218 coupled thereto) are determined in process step 608 inreference to the global coordinate system 902. In addition, eachreference array coupled to the bones or bony anatomy of the patient 56defines a bone coordinate system. For example, a reference array coupledto the femur of the patient 56 defines a first bone coordinate system904 and a reference array coupled to the tibia of the patient 56 definesa second bone coordinate system 906 as illustrated in FIG. 19. Asdiscussed in detail below, the position of the magnets 400 is determinedfirst in the magnetic sensor array coordinate system 900 andsubsequently transformed to the respective bone coordinate system 904,906. That is, the position of a particular magnet 400 is transformedfrom the magnetic sensor array coordinate system 900 to the bonecoordinate system 904, 906 of the particular bone in which the magnet isimplanted or otherwise coupled to.

To determine the position of the magnet(s) 400 in the magnetic sensorarray coordinate system 900 in process step 604, the magnetic sensorarray 204 may execute an algorithm 650 for determining a position of amagnet 400 as illustrated in FIG. 14. The algorithm 650 begins withprocess steps 652 and 654. As illustrated in FIG. 14, the process steps652 and 654 may be executed contemporaneously with each other or in anyorder. In process step 652, undesirable environmental magnetic fieldsthat may cause errors in the measurements of the magnetic sensors 350are measured. The accuracy of the measurements of the magnetic sensors350 may be improved by compensating the magnetic sensor array 204 forthese undesirable, adverse factors. The environmental magnetic fieldswhich are measured in process step 652 may include the Earth's magneticfield and magnetic fields generated from other equipment located in thesurgical room, electrical cables, iron constructions, vehicles, andother stray or undesirable magnetic fields generated by sources otherthan the magnetic source 206 which may interfere with the magneticfields generated by the magnetic source 206. For example, the Earth'smagnetic field may adversely affect the measurements of the magneticsensors 350 by interfering (i.e., constructively or destructively) withthe magnetic field generated by the magnetic source 206. Because theEarth's magnetic field is continuously changing, a fixed adjustmentvalue or offset for the magnetic sensors 350 is not available. However,as discussed above in regard to FIGS. 7, by using a remote magneticsensor coupled to the magnetic sensor array 204, the effects of theEarth's magnetic field can be accounted for. That is, because the remotemagnetic sensor is located apart from the sensor circuit 250 of themagnetic sensor array 204, the magnetic field generated by the magneticsource 206 has minimal impact on the measurements of the remote magneticsensor. As such, the measurements of the remote magnetic sensor aregenerated primarily in response to the Earth's magnetic field and otherenvironmental magnetic fields such as those caused by other surgicalequipment located in the operating room and the like. Therefore, inprocess step 652, the measurements of the remote magnetic sensor aresampled.

In process step 654, the components of the three-dimensional magneticflux density of the magnet 400 at various positions are measured. To doso, the output of each of the magnetic sensors 350 is sampled. Asdiscussed above in regard to FIG. 9, some of the magnetic sensors 350are three-dimensional magnetic sensors and, as such, measure themagnitude of each component at a given position of the magnetic fluxdensity of the magnet 400. Other magnetic sensors 350 areone-dimensional magnetic sensors and are configured to measure themagnitude of only one component of the magnetic flux density. In theillustrative embodiment of FIG. 9, a total of twenty seven componentmeasurements are generated by the magnetic sensors 350 (i.e., fivethree-dimensional magnetic sensors and twelve one-dimensional magneticsensors). The magnetic field measurements may be stored in a suitablememory device for subsequent processing as described below. The samplingrate of the magnetic sensors 350 may be of rate useable or sustainableby the processing circuit 352

Contemporaneously with or during predetermined periods of themeasurement process of the magnetic sensors 350 (e.g., during thepositioning of the magnetic sensor array 204 in process step 602 of thealgorithm 600), the sensor circuit 250 may be configured to perform anumber of test procedures. To do so, the sensor circuit 250 may includeone or more test circuits configured to perform one or more testalgorithms. For example, the test circuits may be configured to measurethe supply voltage of the sensor circuit 250 and produce an error if thesupply voltage is below a predetermined minimum threshold or above apredetermined maximum threshold. Additionally, the sensor circuit 250may be configured to monitor the output of the magnetic sensors 350 andproduce an error (e.g., activate an indicator to alert the user of themagnetic sensor array 204) if the voltage levels of the output signalsof the sensors 350 are above a predetermined maximum threshold (i.e.,the magnetic sensors 350 are in saturation) or below a predeterminedminimum threshold (i.e., below the noise floor of the magnetic sensors350). Additionally, in some embodiments, the sensor circuit 250 mayinclude one or more compensation circuits to compensate or adjust themeasurement values of the magnetic sensors 350 for such factors astemperature or the like.

Subsequently, in process step 656, the measurements of the magneticsensors 350 are compensated or adjusted for the undesirableenvironmental magnetic fields. To do so, in one embodiment, themeasurements of the magnetic sensors 350 are adjusted by subtracting themeasurements of the remote magnetic sensor 386. In this way, themagnetic field errors caused by the Earth's magnetic field and otherenvironmental magnetic fields are adjusted out of the measurement dataproduced by the magnetic sensors 350 and the overall accuracy of themagnetic sensor array 204 in measuring the magnetic flux densitygenerated primarily from the magnetic source 206 is improved.

In process step 658, an initial estimate of the position of the magnet400 is determined. The initial estimate includes an estimate of thevalues of the five degrees of freedom of the magnet 400. That is, theinitial estimate includes an X-coordinate value, a Y-coordinate value, aZ-coordinate value, a (theta) θ-rotational value about the X-axis, and a(phi) φ-rotational value about the Y-axis of the magnet 400. In oneparticular embodiment, the X-, Y-, and Z-coordinate values are thecoordinate values of the particular magnetic sensor 350 with respect tothe centroid of the magnet 400. That is, the X-, Y-, and Z-coordinatevalues are estimates of the position of the magnetic sensor 350 in athree-dimensional coordinate system wherein the centroid of the magnet400 is defined as the center of the coordinate system (i.e., thecentroid of the magnet 400 lies at point (0, 0, 0)). Estimating thelocation of the magnet 400 in this manner allows calculations of themagnetic flux density using positive values for the X-, Y-, andZ-coordinate estimated values.

The estimated values may be any values and, in some embodiments, arepredetermined seeded values that are used for measurement processes.However, by selecting an initial estimate closer to the actual positionof the magnet 400, the speed and accuracy of the algorithm 650 may beimproved. To do so, knowledge of the position of the magnetic sensorarray 204 with respect to the magnet 400 may be used. That is, asdiscussed above in process step 602 of algorithm 600, the magneticsensor array 204 is positioned such that the array 204 is on-axis ornear on-axis with the magnetic moment of the magnet 400. As such, in oneembodiment, the initial estimate of the location of the magnet 400 withrespect to the magnetic sensor array 204 includes an estimatedX-coordinate value of zero and an estimate Y-coordinate value of zero.Additionally, the (theta) θ-rotational value and the a (phi)φ-rotational value of the magnet 400 may be estimated as zero (e.g., itmay be assumed that the sensor board 370 of the magnetic sensor array204 is positioned orthogonal to the longitudinal axis of the magnet400). The Z-coordinate value may also be estimated at zero. However, foradditional accuracy, the Z-coordinate value may be estimated based onthe average magnetic flux density of the Z-vector of the magnetic fluxdensity of the magnet 400 as measured by the magnetic sensors 350 (i.e.,those magnetic sensors 350 configured to measure the Z-vector of thethree-dimensional magnetic field of the magnet 400). However, otherestimated values may be used in other embodiments.

Once the initial estimated position of the magnet 400 is determined inprocess step 658, the components of the theoretical three-dimensionalmagnetic flux density of the magnet 400 at various points in space arecalculated in process step 660. During the first iteration of thealgorithm 650, the five degrees of freedom values of the magnet 400estimated in process step 658 are used to determine each component ofthe theoretical three-dimensional magnetic flux density. However, asdiscussed below in regard to process step 666, in subsequent iterationsof the algorithm 650, revised estimated values of the five degrees offreedom of the magnet 400 are used in process step 660.

The theoretical three-dimensional magnetic flux density of the magnet400 at each sensor's 350 position at a point in space about the magnet400 may be calculated using any suitable equation(s) and/or algorithms.In one particular embodiment, the following equations are used tocalculate the magnitude of the magnetic flux density components (i.e.,the X-, Y-, and Z-components) of the magnet 400.

$B_{x} = \frac{\mu\;{m\left\lbrack {\frac{\begin{matrix}{3{x\left( {{x\;{\sin(\Theta)}{\cos(\Phi)}} +} \right.}} \\\left. {{y\;\sin(\Theta){\sin(\Phi)}} + {z\;{\cos(\Theta)}}} \right)\end{matrix}}{r^{2}} - {{\sin(\Theta)}{\cos(\Phi)}}} \right\rbrack}}{4\pi\; r^{3}}$$B_{y} = \frac{\mu\;{m\left\lbrack {\frac{\begin{matrix}{3{y\left( {{x\;{\sin(\Theta)}{\cos(\Phi)}} +} \right.}} \\\left. {{y\;\sin(\Theta){\sin(\Phi)}} + {z\;{\cos(\Theta)}}} \right)\end{matrix}}{r^{2}} - {{\sin(\Theta)}{\sin(\Phi)}}} \right\rbrack}}{4\pi\; r^{3}}$$B_{z} = \frac{\mu\;{m\left\lbrack {\frac{\begin{matrix}{3{z\left( {{x\;{\sin(\Theta)}{\cos(\Phi)}} +} \right.}} \\\left. {{y\;\sin(\Theta){\sin(\Phi)}} + {z\;{\cos(\Theta)}}} \right)\end{matrix}}{r^{2}} - {\cos(\Phi)}} \right\rbrack}}{4\pi\; r^{3}}$

wherein μ is the permeability of free space (i.e., about 4*π*10⁻¹⁷WbA⁻¹m⁻¹), m is the magnitude of the magnetic moment of the magnet 400in units of Am², and r=√{square root over (x²+y²+z²)} (in distanceunits).

Once the theoretical magnetic flux densities are calculated in processstep 660, the sum of the error between the theoretical magnetic fluxdensity component values and the measured magnetic flux density valuesas determined in process step 654 is calculated in process step 662.That is, the difference between the theoretical magnetic flux densitycomponent values and the measured magnetic flux density component valuesfor each magnetic sensor 350 is calculated. The calculated differencesfor each magnetic sensor 350 is then summed. To do so, in one particularembodiment, the following objective function may be used.

$F = {\sum\limits_{i = 0}^{n}\;{w_{i}\left( {B_{{th}_{i}} - B_{{me}_{i}}} \right)}^{2}}$

wherein n is the number of magnetic flux density components measured,B_(th) is the theoretical magnitude of the ith magnetic flux densitycomponent of the magnet 400 at a given sensor position, B_(me) is themeasured magnitude of the ith magnetic flux density component of themagnet 400 at a given position, and w_(i) is a weighting factor for theith magnetic flux density component. The weighting factor, w_(i), may beused to emphasize or minimize the effect of certain magnetic sensors350. For example, in some embodiments, the magnetic sensors 350positioned toward the center of the sensor board 370 may be given ahigher weighting factor than the magnetic sensors 350 positioned towardthe perimeter of the sensor board 370. In one particular embodiment, theweighting factors, w_(i), are normalized weighting factors (i.e., rangefrom a value of 0 to a value of 1). Additionally, other weightingschemes may be used. For example, each weighting factors, w_(i), may bebased on the magnetic field sensitivity of the particular magneticsensor 350 measuring the ith magnetic flux density component.Alternatively, the weighting factors, w_(i), may be based on thestandard deviation divided by the mean of a predetermined number ofsamples for each magnetic sensor 350. In other embodiments, theweighting factors, w_(i), may be used to selectively ignore sensors thatare saturated or under the noise floor of the magnetic sensor 350. Stillfurther, a combination of these weighting schemes may be used in someembodiments.

In process step 664, the algorithm 650 determines if the value of theobjective function determined in process step 662 is below apredetermined threshold value. The predetermined threshold value isselected such that once the objective function falls below the thresholdvalue, the position of the magnetic source 206 (i.e., the magnet 400)with respect to the magnetic sensor array 206 is known within anacceptable tolerance level. In one particular embodiment, thepredetermined threshold value is 0.0. However, to increase the speed ofconvergence of the algorithm 650 on or below the predetermined thresholdvalue, threshold values greater than 0.0 may be used in otherembodiments.

If the objective function (i.e., the sum of errors) is determined to bebelow the predetermined threshold value, the algorithm 650 completesexecution. However, if the objective function is determined to begreater than the predetermined threshold value in process step 664, thealgorithm advances to process step 666. In process step 666, theestimate of the position of the magnetic source is adjusted. That is, inthe first iteration of the algorithm 650, the initial estimate for theX-coordinate value, the Y-coordinate value, the Z-coordinate value, the(theta) θ-rotational value about the X axis, and the (phi) φ-rotationalvalue about the Y axis of the magnet 400 are adjusted. A localoptimization algorithm or a global optimization algorithm may be used.Any suitable local or global optimization algorithm may be used.Selection of the local or global optimization algorithm may be based on,for example, the speed of convergence of the algorithm, the accuracy ofthe solution, and/or the ease of implementation from a software and/orhardware standpoint.

Once a new estimate for the position of the magnet 400 (in five degreesof freedom) has been determined, the algorithm 650 loops back to processstep 660 in which the theoretical magnetic flux density component valuesare determined using the new estimates calculated in process step 666.In this way, the algorithm 650 performs an iterative loop using thelocal/global optimization algorithm until the objective functionconverges to or below the predetermined threshold value. As discussedabove, once the objective function has so converged, the five degrees offreedom of the magnet 400 is known.

It should be appreciated that in some embodiments the algorithm 650 isexecuted solely by the magnetic sensor array 204. However, in otherembodiments, the magnetic sensor array 204 may be configured only tomeasure the magnetic flux density components of the magnet 400 inprocess step 654. In such embodiments, the process steps 656-666 areexecuted by the controller 208. To do so, the sensor circuit 250 of themagnetic sensor array 204 is configured to transmit the magnetic fieldmeasurement values of each magnetic sensor 350 to the controller 202

Referring back to algorithm 600 illustrated in FIG. 13, once theposition of each magnet 400 relative to the magnetic sensor array 204 isdetermined in process step 604, such positions are converted to apoint-and-direction format. That is, in some embodiments, the magneticsensor array 204 may be configured to define the position of the magnets400 using coordinate and rotational values (e.g., an X-coordinate value,a Y-coordinate value, a Z-coordinate value, a (theta) θ-rotational valueabout the X axis, and a (phi) φ-rotational value about the Y axis). Ifso, such position is converted to a point-and-direction format inprocess step 610 by determining the location of the centroid 404, P_(M),and direction of the polar axis 406, D_(M), of each magnet 400 in themagnetic sensor array coordinate system 900 based on the position data.As disclosed above, the direction of the polar axis 406 may be definedusing unit vectors. The position of the magnets 400 may be so convertedby the sensor circuit 250 of the magnetic sensor array 204 beforetransmitting the position data to the controller 204 or by thecontroller 204 after the magnetic sensor array 204 has transmitted theposition data. Regardless, once the position of the magnets 400 in themagnetic sensor array coordinate system 900 has been determined, thealgorithm 600 advances to process step 612.

Referring back to process step 606, contemporaneously with thedetermination of the position of the current magnet 400 in process steps604 and 610, the controller 202 determines the position of the magneticsensor array 204 and the relevant bony anatomy in process steps 606,608. To do so, in process step 606, the controller 202 determines atransformation matrix for transforming the magnetic sensor arraycoordinate system 900 to the global coordinate system 902. Similarly, inprocess step 608, the controller determines a transformation matrix fortransforming the bone coordinate systems 904, 906 to the globalcoordinate system 902. Each transformation matrix so determined issimilar and includes a rotational component and a translationalcomponent. For example, the controller 202 may determine atransformation matrix, RT, as follows:

${RT} = \begin{bmatrix}{{{\cos(\Psi)}{\cos(\Phi)}} + {{\sin(\Psi)}{\sin(\Phi)}{\sin(\Theta)}}} & {{{\sin(\Psi)}{\cos(\Phi)}} - {{\cos(\Psi)}{\sin(\Phi)}{\sin(\Theta)}}} & {{\cos(\Theta)}{\sin(\Phi)}} & T_{x} \\{{- {\sin(\Psi)}}{\cos(\Theta)}} & {{\cos(\Psi)}{\cos(\Theta)}} & {\sin(\Theta)} & T_{y} \\{{{\sin(\Psi)}{\sin(\Theta)}{\cos(\Phi)}} - {{\cos(\Psi)}{\sin(\Phi)}}} & {{{- {\cos(\Psi)}}{\sin(\Theta)}{\cos(\Phi)}} - {{\sin(\Psi)}{\sin(\Phi)}}} & {{\cos(\Theta)}{\cos(\Phi)}} & T_{xz} \\0 & 0 & 0 & 1\end{bmatrix}$

wherein T_(x) is the translation coordinate value in the X-axis, T_(y)is the translation coordinate value in the Y-axis, T_(z) is thetranslation coordinate value in the Z-axis, Θ (theta) is the rotationalvalue about the X-axis, Φ (phi) is the rotational value about theY-axis, and Ψ (psi) is the rotational value about the Z-axis. Thetransformation matrices are used by the controller 202 to determine theproper position in which to display indicia on the display device 212.That is, the position of an item of interest can be determined in theglobal coordinate system 902 by multiplying the position of the item ofinterest in the magnetic sensor array coordinate system 900 or one ofthe bone coordinate systems 904, 906 by the appropriate transformationmatrix.

Once the magnetic sensor array 204 (and/or controller 302) hasdetermined the position of the current magnet 400 in the magnetic sensorarray coordinate system 900 and the controller 302 has determined theposition of the magnetic sensor array 204 and relevant bony anatomy inthe global coordinate system 902, the position of the current magnet istransformed from the magnetic sensor array coordinate system 900 to therespective bone coordinate system 904, 906 in process step 612. To doso, the location of the centroid 404 and the direction of the polar axis406 of the current magnet 400 is transformed to the respective bonecoordinate system 904, 906. The location of the centroid 404 may betransformed using the following equation:P _(B) =RT[2]⁻¹*(RT[1]* P _(M))

wherein P_(B) is the location vector (i.e., X-coordinate value,Y-coordinate value, and Z-coordinate value) of the centroid 404 of thecurrent magnet 400 in the respective bone coordinate system 904, 906,RT[2] is the transformation matrix determined by the controller 202 totransform the bone coordinate system 904, 906 to the global coordinatesystem 902 (RT[2]⁻¹ is the inverse of such matrix), RT[1] is thetransformation matrix determined by the controller 202 to transform themagnetic sensor array coordinate system 900 to the global coordinatesystem 902, and P_(M) is the location vector of the centroid of themagnet 400 in the magnetic sensor array coordinate system 900. BecauseP_(M) is a 3×1 matrix and RT[1] is a 4×4 matrix, a value of 1 may beadded to the column of P_(M) to form a 4×1 matrix. Such a calculationwill result in a 4×1 P_(B) matrix, wherein the last column value, whichis equal to 1, is ignored.

The direction of the polar axis 406 of the current magnet 400 in therespective bone coordinate system 904, 906 is also determined in processstep 612. Because the direction of the polar axis 406 is defined in aunit vector format, the direction vector does not need to be translatedfrom the magnetic sensor array coordinate system 900. That is, thedirection of the polar axis 406 of the current magnet may be determinedin the respective bone coordinate system 904, 906 by multiplying thedirection vector of the polar axis 406 in the magnetic sensor arraycoordinate system 900 by a rotational matrix determined by thecontroller 208. The rotational matrix is equal to the upper-left 3×3matrix of the RT transformation matrix described above and may bedetermined as follows:

$R = \begin{bmatrix}{{{\cos(\Psi)}{\cos(\Phi)}} + {{\sin(\Psi)}{\sin(\Phi)}{\sin(\Theta)}}} & {{{\sin(\Psi)}{\cos(\Phi)}} - {{\cos(\Psi)}{\sin(\Phi)}{\sin(\Theta)}}} & {{\cos(\Theta)}{\sin(\Phi)}} \\{{- {\sin(\Psi)}}{\cos(\Theta)}} & {{\cos(\Psi)}{\cos(\Theta)}} & {\sin(\Theta)} \\{{{\sin(\Psi)}{\sin(\Theta)}{\cos(\Phi)}} - {{\cos(\Psi)}{\sin(\Phi)}}} & {{{- {\cos(\Psi)}}{\sin(\Theta)}{\cos(\Phi)}} - {{\sin(\Psi)}{\sin(\Phi)}}} & {{\cos(\Theta)}{\cos(\Phi)}}\end{bmatrix}$

wherein Θ (theta) is the rotational value about the X-axis, Φ (phi) isthe rotational value about the Y-axis, and Ψ (psi) is the rotationalvalue about the Z-axis. As such, the direction of polar axis 406 may betransformed from the magnetic sensor array coordinate system 900 to therespective bone coordinate system 904, 906 using the following equation:D _(B) =R[2]⁻¹*(R[1]* D _(M))

wherein D_(B) is the direction unit vector (i.e., X-coordinate value,Y-coordinate value, and Z-coordinate value) of the centroid 404 of thecurrent magnet 400 in the respective bone coordinate system 904, 906,R[2] is the rotational matrix of the transformation matrix RT[2]determined by the controller 202 to transform the bone coordinate system904, 906 to the global coordinate system 902 (R[2]⁻¹ is the inverse ofsuch matrix), R[1] is the rotational matrix of the transformation matrixRT[1] determined by the controller 202 to transform the magnetic sensorarray coordinate system 900 to the global coordinate system 902, andP_(M) is the location vector of the centroid of the magnet 400 in themagnetic sensor array coordinate system 900.

Once the position of the current magnet 400 in the respective bonecoordinate system 904, 906 has been determined in process step 612, thecontroller 208 determines if the current magnet 400 is the last magnet400 of the magnetic source 206. The controller 208 may be instructedthat the current magnet is the last magnet 400 by, for example, enteringappropriate information into the controller 208. If the current magnet400 is not the last magnet of the magnetic source 206, the algorithm 600loops back to process step 602 wherein the magnetic sensor array 204 ispositioned near the next magnet 400 of the magnetic source 206. Again,as discussed above, the magnetic sensor array 204 is positioned near themagnets 400 in a predetermined order such that the position data of eachmagnet 400 is associated with the correct magnet 400 of thethree-dimensional image 850, 860 by the controller 208.

If, however, the current magnet 400 is the last magnet 400 of themagnetic source 206, the algorithm 600 advances to process step 616. Inprocess step 616, the controller 206 is configured to determine atransformation matrix for transforming the image coordinate system 856of the three-dimensional image 850, 860 (see FIGS. 18 and 19) to each ofthe bone coordinate systems 904, 906. To do so, the controller 206 mayexecute an algorithm 700 for determining such a transformation matrix asillustrated in FIG. 15. The algorithm 700 begins with process step 702in which an initial estimate of the transformation matrix, RT_(I), isdetermined. That is, a matrix for transforming the image coordinatesystem 856 to each bone coordinate system 904, 906 is determined. Thetransformation matrix may be populated with any estimated values and, insome embodiments, are predetermined seeded values. However, by selectingan initial estimated transformation matrix closer to the accuratetransformation matrix, the speed and accuracy of the algorithm 700 maybe improved. To do so, in some embodiments, the controller 208 may beconfigured to determine a transformation matrix required to align thecentroid 404 and the long axis 406 of one of the magnets 400 in theimage coordinate system 846 to the centroid 404 and the long axis 406 ofrespective magnetic source 400 in the bone coordinate systems 904, 906.Because such a transformation matrix correlates only a single magnet 400between the image coordinate system 846 and the bone coordinate system904, 906, the calculation of the transform matrix is simplified and,thereby, a relatively fast computation. The remaining magnets 400 may ormay not be aligned between the image coordinate system 846 and the bonecoordinate system 904, 906. Regardless, such an initial estimatedtransformation matrix provides an initial matrix, which the controller208 refines to improve the correlation between the image coordinatesystem 846 and the bone coordinate system 904, 906 as discussed indetail below.

Additionally or alternatively, previously determined matrices may beused as the initial estimate in some embodiments. For example, when thecontroller 208 determines a transformation matrix, RT_(I), during anorthopaedic surgical procedure, such a matrix may be stored in thememory device 224, the database 226, or the remote database 228.Subsequently, during the next surgical procedure, the controller 208 maybe configured to retrieve the stored transformation matrix and use suchmatrix as the initial estimate. In such embodiments, an assumption ismade that the patient 56 is substantially similarly located with respectto the computer assisted orthopaedic surgery system 202.

Regardless, once an initial transformation matrix, RT_(I), is estimatedin process step 702, the positions of the magnets 400 in the imagecoordinate system 856 are transformed to the respective bone coordinatesystem 904, 906 using the estimated transformation matrix. As discussedabove in regard to process step 558 of algorithm 550 illustrated in FIG.12, the position of the magnets 400 in the three-dimensional image 850,860 is represented as a point (a three-dimensional vector including anX-coordinate value, a Y-coordinate value, and a Z-coordinate value ofthe position of the centroid 404) and a direction (a three-dimensionalunit vector of the direction of the polar axis 406). As such, thelocation of the centroid 404 of each magnet 400 may be transformed fromthe image coordinate system 856 to the respective bone coordinate systemby the following equation:P _(B) ^(′) =RT _(I) *P _(I)

wherein P_(B) ^(′)is the calculated location vector (i.e., X-coordinatevalue, Y-coordinate value, and Z-coordinate value) of the centroid 404of the magnet 400 in the respective bone coordinate system 904, 906,RT_(I) is the estimated transformation matrix to transform the imagecoordinate system 856 to the respective bone coordinate system 904, 906,and P_(I) is the location vector of the centroid of the magnet 400 inthe image coordinate system 856. Again, because P_(I) is a 3×1 matrixand RT_(I) is a 4×4 matrix, a value of 1 may be appended to the last rowof P_(I) to form a 4×1 matrix.

The direction of the polar axis 406 of the current magnet 400 in therespective bone coordinate system 904, 906 is also determined. Again,because the direction of the polar axis 406 is defined in a unit vectorformat, the direction vector does not need to be translated from theimage coordinate system 856. As such, the location of the direction ofthe polar axis 406 of each magnet 400 may be transformed from the imagecoordinate system 856 to the respective bone coordinate system 904, 906using the estimated rotation matrix (the upper-left 3×3 matrix of theestimated transformation matrix RT_(I)) by the following equation:D _(B) ^(′) =R _(I) *D _(I)

wherein D_(B) ^(′)is the calculated direction unit vector (i.e.,X-coordinate value, Y-coordinate value, and Z-coordinate value) of thepolar axis 406 of the current magnet 400 in the respective bonecoordinate system 904, 906, R_(I) is the rotational matrix of theestimated transformation matrix to transform the image coordinate system856 to the respective bone coordinate system 904, 906, and D_(I) is thedirection vector of the polar axis 406 of the magnet 400 in the imagecoordinate system 856.

Once the transformed position of the magnets 400 have been determined inprocess step 706, the sum of the error between the transformed positionof the magnets 400 as determined in process step 706 and the measuredposition of the magnets 400 in the bone coordinate system 904, 906 asdetermined in process step 612 of algorithm 600 is calculated in processstep 708. That is, the difference between the transformed position andthe measured position for each magnet 400 is calculated. The calculateddifferences for each magnet 400 is then summed. To do so, in oneparticular embodiment, the following objective function may be used.

$F = {\min\left( {{\sum\limits_{i = 1}^{n}\;\left( {P_{B_{i}} - P_{I_{i}}} \right)^{2}} + {\sum\limits_{i = 1}^{n}\;\left( {D_{B_{i}} - D_{B_{i}}} \right)^{2}}} \right)}$

wherein n is the number of magnets 400, P_(B) is the measured positionvector of the centroid 404 of the magnet i transformed from the magneticsensor array coordinate system 900, P_(I) is the position vector of thecentroid 404 of the magnet i transformed from the image coordinatesystem 856 using the estimated transformation matrix, D_(B) is themeasured direction vector of the polar axis 406 of the magnet itransformed from the magnetic sensor array coordinate system 900, andD_(I) is the position vector of the polar axis 406 of the magnet itransformed from the image coordinate system 856 using the estimatedtransformation matrix. In other embodiments, other types of objectivesfunctions may be used to determine the sum of the error between thetransformed and measured position of the magnets 400. For example, insome embodiments, the square root of the sum of the squares of errorsmay be determined. Additionally, in some embodiments, the objectivefunction may also include one or more weighting factors applied to thoseterms having a higher degree of measurement confidence. For example, aweighting factor may be applied to the position terms of a particularmagnet 400.

In process step 708, the algorithm 700 determines if the value of theobjective function determined in process step 706 is below apredetermined threshold value. The predetermined threshold value isselected such that once the objective function falls below the thresholdvalue, the estimated transformation matrix, RT_(I), transforms the imagecoordinate system to the respective bone coordinate systems 904, 906within an acceptable tolerance level. In one particular embodiment, thepredetermined threshold value is 0.0. However, to increase the speed ofconvergence of the algorithm 700 on or below the predetermined thresholdvalue, threshold values greater than 0.0 may be used in otherembodiments.

If the objective function (i.e., the sum of errors) is determined to bebelow the predetermined threshold value, the algorithm 700 completesexecution. However, if the objective function is determined to begreater than the predetermined threshold value in process step 708, thealgorithm 700 advances to process step 710. In process step 710, theestimate of the transformation matrix, RT_(I), is adjusted. A localoptimization algorithm or a global optimization algorithm may be used todetermine such an adjustment. Any suitable local or global optimizationalgorithm may be used. Selection of the local or global optimizationalgorithm may be based on, for example, the speed of convergence of thealgorithm, the accuracy of the solution, and/or the ease ofimplementation from a software and/or hardware standpoint.

Once a new estimate for the transformation matrix, RT_(I), has beendetermined, the algorithm 700 loops back to process step 704 in whichthe position of the magnets 400 is again transformed from the imagecoordinate system 856 to the respective bone coordinate system 904, 906using the new estimated transformation matrix, RT_(I). In this way, thealgorithm 700 performs an iterative loop using the local/globaloptimization algorithm until the objective function converges to orbelow the predetermined threshold value. As discussed above, once theobjective function has so converged, the transformation matrix, RT_(I),is known.

Referring back to algorithm 500 in FIG. 11, after the bony anatomy hasbeen registered in process step 516, the magnetic source 206 may bedecoupled from the bone(s) of the patient in process step 518. To do so,the magnetic sensor array 204 may be used to determine the location ofthe magnets 400 that form the magnetic source 206. For example, themagnetic sensor array 204 may be passed over the skin of the patientuntil the indicator 360 of the magnetic sensor array 204 is activated,which indicates the magnetic sensor array 204 is in the magnetic fieldof at least one of the magnets 400. The magnets 400 may then be removedusing an appropriate surgical procedure. In this way, the magneticfields of the magnets 400 are prevented from interfering with theperformance of the orthopaedic surgical procedure. For example, inembodiments wherein the reference arrays are embodied as wirelesstransmitters (i.e., electromagnetic sensor arrays) rather thanreflective reference arrays, the magnetic source 206 may be decoupledfrom the bone(s) of the patient prior to the performance of theorthopaedic surgical procedure so as to avoid any magnetic interferencewith the operation of the reference arrays 54. Alternatively, if themagnetic source 206 is left coupled to the bone(s) of the patient duringthe performance of the orthopaedic surgical procedure, the bone(s) maybe reregistered at any time and as often as necessary during theprocedure.

Subsequently, in process step 520, the orthopaedic surgical proceduremay be performed. During performance of the orthopaedic surgicalprocedure, the computer assisted orthopaedic surgery system 200 providesan amount of surgical navigation to the surgeon 50 by displaying thethree-dimensional image(s) 850 of the relevant bony anatomy. Because thethree-dimensional image(s) 850 is registered with the bone coordinatesystem 904, 906 via use of the transformation matrix determined inprocess step 616 of algorithm 600, the image(s) 850 are displayed to thesurgeon on the display device 220 in a location and orientation based onthe position of the reference arrays 218 coupled to the relevant bonyanatomy. As such, the surgeon may use the system 200 to navigate andstep through the orthopaedic surgical process in a similar manner as theCAOS system 10 illustrated in and described above in regard to FIGS.1-6. It should be appreciated, however, that the present algorithm 500for registering the bone anatomy of a patient may completely orpartially replace the process step 106 of the algorithm 100 illustratedin and described above in regard to FIG. 6.

While the disclosure has been illustrated and described in detail in thedrawings and foregoing description, such an illustration and descriptionis to be considered as exemplary and not restrictive in character, itbeing understood that only illustrative embodiments have been shown anddescribed and that all changes and modifications that come within thespirit of the disclosure are desired to be protected.

There are a plurality of advantages of the present disclosure arisingfrom the various features of the system, and method described herein. Itwill be noted that alternative embodiments of the system and method ofthe present disclosure may not include all of the features described yetstill benefit from at least some of the advantages of such features.Those of ordinary skill in the art may readily devise their ownimplementations of the system and method that incorporate one or more ofthe features of the present invention and fall within the spirit andscope of the present disclosure as defined by the appended claims.

1. A method for registering a bone of a patient with a computer assistedorthopaedic surgery system, the method comprising: retrieving an imageof the bone including indicia of the position of a magnet implanted inthe bone, the image defining an image coordinate system; determining aposition of a reference array coupled to the bone, the reference arraydefining a bone coordinate system; determining first data indicative ofthe position of the magnet in the bone coordinate system by determininga location of the centroid of the magnet using the following equation:P _(B) =RT[2]⁻¹*(RT[1]* P _(M)) wherein P_(B) the location of thecentroid of the magnet in the bone coordinate system, RT[1] is a firsttransformation matrix, RT[2] is a second transformation matrix, andP_(M) is the location of the centroid of the magnet in the magneticsensor array coordinate system; determining second data indicative of acorrelation between the image coordinate system and the bone coordinatesystem based on the first data; and displaying an image of the bone in aposition determined based on the second data.
 2. The method of claim 1,wherein retrieving an image of the bone comprises retrieving athree-dimensional medical image of the bone of the patient.
 3. Themethod of claim 1, wherein coupling a reference array to the bone of thepatient comprises coupling a reference array to the bone of the patientselected from the group consisting of a reflective reference array and aradio frequency reference array.
 4. The method of claim 1, whereindetermining the first data comprises positioning a magnetic sensor arrayin a magnetic field generated by the magnet, the magnetic sensor arraydefining a magnetic sensor array coordinate system.
 5. The method ofclaim 4, wherein determining the first data comprises measuring amagnetic flux density of the magnetic field at a plurality of points inspace with a number of magnetic sensors of the magnetic sensor array. 6.The method of claim 4, wherein determining the first data comprisesdetermining the position of the magnet in the magnetic sensor arraycoordinate system.
 7. The method of claim 6, wherein determining theposition of the magnetic source in the magnetic sensor array coordinatesystem comprises: (i) determining the location of the centroid of themagnet coupled to the bone in the magnetic sensor array coordinatesystem, and (ii) determining the direction of a polar axis of the magnetin the magnetic sensor array coordinate system.
 8. The method of claim7, wherein determining the first data comprises: (i) determining theposition of the magnetic sensor array in a global coordinate systemdefined by a tracking unit of the computer assisted orthopaedic surgerysystem, and (ii) determining the position of the bone of the patient inthe global coordinate system based on the position of the referencearray.
 9. The method of claim 1, wherein determining the first datafurther comprises determine a direction of the polar axis of themagnetic is determined using the following equation:D _(B) =R[2]⁻¹*(R[1]*D _(M)) wherein D_(B) the direction of the polaraxis of the magnet in the bone coordinate system, R[2] is the secondtransformation matrix, and R[1] is the first transformation matrix, andD_(M) is the direction of the polar axis of the magnet in the magneticsensor array coordinate system.
 10. The method of claim 1, whereindetermining second data indicative of a correlation between the imagecoordinate system and the bone coordinate system comprises determining atransformation matrix.
 11. The method of claim 10, wherein determiningthe transformation matrix comprises: (i) estimating a transformationmatrix for transforming the image coordinate system to the bonecoordinate system, (ii) transforming the position of the magnet from theimage coordinate system to the bone coordinate system using theestimated transformation matrix, (iii) generating third data indicativeof the transformed position of the magnet, (iv) calculating a differencebetween the first data and the third data, and (v) repeating steps(i)-(iv) until the difference between the first data and the third datais less than a predetermined minimum threshold value.
 12. The method ofclaim 11, wherein calculating a difference between the first data andthe third data comprises calculating a sum of the squared differencebetween the first data and the third data.
 13. The method of claim 11,wherein displaying the image of the bone comprises displaying an imageof the bone in a location and orientation determined using the estimatedtransformation matrix.
 14. The method of claim 11, wherein the magnetcomprises a magnet and the first and second data comprise location dataindicative of the location of the centroid of the magnet and directiondata indicative of the direction of a polar axis of the magnet.
 15. Asystem for registering a bone of a patient to with a computer assistedorthopaedic surgery system, the system comprising: a first referencearray configured to be coupled to the bone of the patient, the firstreference array defining a first coordinate system; a display device; aprocessor electrically coupled to the display device; and a memorydevice electrically coupled to the processor, the memory device havingstored therein a plurality of instructions, which when executed by theprocessor, cause the processor to: retrieve an image of the boneincluding indicia of the position of a magnet coupled to the bone, theimage defining a second coordinate system; determine first dataindicative of the position of the magnet in the first coordinate systemby determining a location of the centroid of the magnet using thefollowing equation:P _(B) =RT[2]⁻¹*(RT[1]* P _(M)) wherein P_(B) the location of thecentroid of the magnet in the bone coordinate system, RT[1] is a firsttransformation matrix, RT[2] is a second transformation matrix, andP_(M) is the location of the centroid of the magnet in the magneticsensor array coordinate system; determine second data indicative of acorrelation between the second coordinate system and the firstcoordinate system based on the first data; and display an image of thebone on the display device in a position determined based on the seconddata.
 16. The system of claim 15, further comprising a magnetic sensorarray having a second reference array coupled thereto, the secondreference array defining a third coordinate system, wherein: todetermine first data comprises to determine the position of the magnetin the third coordinate system based on data received from the magneticsensor array.
 17. The system of claim 15, wherein to determine seconddata indicative of a correlation between the image coordinate system andthe bone coordinate system comprises to determine a transformationmatrix.
 18. The system of claim 17, wherein to determine atransformation matrix comprises to: (i) estimate a transformation matrixfor transforming the image coordinate system to the bone coordinatesystem, (ii) transform the position of the magnet from the imagecoordinate system to the bone coordinate system using the estimatedtransformation matrix, (iii) generate third data indicative of thetransformed position of the magnet, (iv) calculate a difference betweenthe first data and the third data, and (v) repeat steps (i)-(iv) untilthe difference between the first data and the third data is less than apredetermined minimum threshold value.
 19. A method for registering abone of a patient with a computer assisted orthopaedic surgery system,the method comprising: determining the position of a magnet implanted inthe bone in a first coordinate system defined by a magnetic sensorarray; transforming the position of the magnet from the first coordinatesystem to a second coordinate system defined by a reference arraycoupled to the bone by determining the location of a centroid of themagnet using the following equation:P_(B) =RT[2]⁻¹*(RT[1]* P _(M)) wherein P_(B) the location of thecentroid of the magnet in the bone coordinate system, RT[1] is a firsttransformation matrix, RT[2] is a second transformation matrix, andP_(M) is the location of the centroid of the magnet in the magneticsensor array coordinate system; generating first data indicative of theposition of the magnet in the second coordinate system; retrieving animage of the bone having indicia of the position of the magnet, theimage defining a third coordinate system; determining a transformationmatrix for transforming the position of the magnet from the thirdcoordinate system to the second coordinate system based on the firstdata; and displaying an image of the bone in a location and orientationdetermined using the transformation matrix.
 20. The method of claim 19,wherein determining the position of a magnet coupled to the bone in thefirst coordinate system comprises: (i) determining the location of thecentroid of the magnet in the first coordinate system, and (ii)determining the direction of a polar axis of the magnet in the firstcoordinate system.
 21. The method of claim 19, wherein generating firstdata indicative of the position of the magnet in the second coordinatesystem comprises: (i) determining the location of the centroid of themagnet in the second coordinate system, and (ii) determining thedirection of a polar axis of the magnet in the second coordinate system.22. The method of claim 19, wherein determining a transformation matrixfor transforming the position of the magnet from the third coordinatesystem to the second coordinate system comprises (i) determining anestimated transformation matrix for transforming the third coordinatesystem to the second coordinate system, (ii) transforming the positionof the magnet from the third coordinate system to the second coordinatesystem using the estimated transformation matrix, (iii) generatingsecond data indicative of the transformed position of the magnet, (iv)calculating a difference between the first data and the second data, and(v) repeating steps (i)-(iv) until the difference between the first dataand the second data is less than a predetermined minimum thresholdvalue.
 23. The method of claim 22, wherein calculating the differencebetween the first data and the second data comprises calculating a sumof the squared difference between the first data and the second data.